Re: [O] getting access to a self-invented option?
Hi, I am not sure where you are trying to get to the value (in the publishing function?), but I use something like the following to handle custom keywords: , | #+MWP_EXPORT_TYPE: slides | | #+name: elt | #+begin_src emacs-lisp :results silent :exports none | (let ((tree (org-element-parse-buffer))) | (org-element-map | tree 'keyword | (lambda (r) | (let ((key (org-element-property :key r)) | (value (org-element-property :value r))) | (when (string= key "MWP_EXPORT_TYPE") | value))) ;; Return the keyword value | nil t)) | #+end_src ` If you have access to the parsed tree or the buffer filename, you may be able to use this or something similar (maybe wrapped in a function). Hope it helps. On 2019-08-02T12:10:18-0400, Matt Price wrote: I'm trying to streamline some veyr ad-hoc workflows I have. One thing I do a lot during the school year is make some changes to an org source file, and then export to hugo markdown with ox-hugo, and finally commit to git (after that I have a git hook that generates the website & uploads the changed pages to the appropriate location, usually a github-pages branch or separate repo). So I have this code: (defun mwp-hugo-export-and-release () "Make it faster and easier to put my lectures up on the website." (interactive) (let* ((modfile (org-hugo-export-wim-to-md)) (basedir (plist-get (org-export-get-environment 'hugo) ':hugo-base-dir )) (default-directory (expand-file-name basedir))) (magit-stage-file modfile) ;; (magit-status) (magit-commit-create) ) ) It works great, I'm very happy. HOWEVER: in my websites I have two kinds of outputs: - regular pages -- these get exported to .md files and turned into html by hugo - lecture notes -- these get exported to reveal.js HTML pages by org-re-reveal and my hugo theme treats them differently . I would really like to set a switch somewhere in the file, something like: #+MWP_EXPORT_TYPE: slides And then something like let* ((modfile (if (eq :mwp-export-type "slides") (mwp-hugo-reveal-custom-export-function) (org-hugo-export-wim-to-md))) etc) do stuff) But I'm not sure how to get access to a totally non-standard option like the kind I just invented in that last bit of pseudo-code. Anyone have a good suggestion? Thank you as always! Matt
Re: [O] [Feature proposal] Add :description function to org-link-parameters
Oops. Indeed, :desk should be replaced with :description. I used :desk property in my personal config, but it may be confusing for others. Best, Ihor John Kitchin writes: > This sounds reasonable. I was a little confused with the mixture of > of description and desk in the code below. If you replace desk with > description everywhere in your code is that what you mean? > > Ihor Radchenko writes: > >> Hi, >> >> Wondering if anyone is interested in adding a new org-link property to >> customise generating the link description. >> >> For now, there is global org-link-make-description-function, which is >> shared among all the link types. If would be more convenient if the >> description function can be set independently for different link types. >> >> I propose to use :description property in org-link-parameters. A sample >> implementation working with current org version is below: >> >> #+begin_src emacs-lisp >> (defun yant/org-make-link-description-function (link desk) >> "Return description of the link LINK according to :description link >> property. >> Return DESK if :desk is not set." >> (let ((fun (org-link-get-parameter (car (split-string link ":")) >> :description))) >> (if (functionp fun) >> (funcall fun link desk) >> desk))) >> >> (setq org-make-link-description-function >> #'yant/org-make-link-description-function) >> #+end_src >> >> Example usage: >> >> #+begin_src emacs-lisp >> (defun org-id-link-desk (link desk) >> "Description function for id: link." >> (let ((id (cadr (split-string link ":" >> (org-with-point-at (org-id-find id 'marker) >> (s-replace "||" "/" (yant/task-fulltitle) >> >> (org-link-set-parameters "id" >> :desk #'org-id-link-desk) >> #+end_src >> >> Best, >> Ihor > > > -- > 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 > -- Ihor Radchenko, PhD, Center for Advancing Materials Performance from the Nanoscale (CAMP-nano) State Key Laboratory for Mechanical Behavior of Materials, Xi'an Jiaotong University, Xi'an, China Email: yanta...@gmail.com, ihor_radche...@alumni.sutd.edu.sg
Re: [O] exported contacts problem
Jean Louis writes: > * Eric Abrahamsen [2019-08-02 23:11]: >> > Neither bbdb nor Org is suitable for any serious collection of >> > contacts. I have 192,000+ contacts, and when they are in database and >> > I am using PostgreSQL, it gives me most of benefits, I can sort people >> > into lists, groups, I can contact them, count interactions, open up >> > their files, emails with a fast command, edit their data, add notes, >> > send them faxes and SMS, maintain relations. >> >> That sounds pretty intense. Have you written a separate package for >> interacting with the database? > > I wrote few generic functions and use it with helm, it works for > me. It is not ready for public. Web interface works based on Gedafe[1] > and then I wrote access to it through console Common Lisp and then > also through Emacs Lisp. > > I am using Emacs module `emacs-libpq'[2] to interact with PostgreSQL. > > Let's say I am looking for somebody, Hyper-C asks me for query, I > enter something, then I can choose to open Org file relating to the > person. When dealing with various companies, things related to a > company shall be in the directory related to company. Things related > to person, for example assignments related to one person shall be in > the file belonging to that person. > > That way full file can be sent to the person for review, it becomes > clear what has been done, and what is yet to be done. > > Mixing assignments, TODO, agendas from all subjects, groups and > persons into one file would give me terrible confusion. Okay, thanks for that run-down, pretty interesting. I've written a package called EBDB[1] that's meant to be sort of an update to BBDB, and while I think someone's using it with tens of thousands of contacts, 192k records would probably exhaust it. It has pluggable data stores, however, one of which will (eventually) be a proper external database, so I'm always interested in how people are using this stuff. Eric [1] https://github.com/girzel/ebdb
Re: [O] [Feature proposal] Add :description function to org-link-parameters
This sounds reasonable. I was a little confused with the mixture of of description and desk in the code below. If you replace desk with description everywhere in your code is that what you mean? Ihor Radchenko writes: > Hi, > > Wondering if anyone is interested in adding a new org-link property to > customise generating the link description. > > For now, there is global org-link-make-description-function, which is > shared among all the link types. If would be more convenient if the > description function can be set independently for different link types. > > I propose to use :description property in org-link-parameters. A sample > implementation working with current org version is below: > > #+begin_src emacs-lisp > (defun yant/org-make-link-description-function (link desk) > "Return description of the link LINK according to :description link > property. > Return DESK if :desk is not set." > (let ((fun (org-link-get-parameter (car (split-string link ":")) > :description))) > (if (functionp fun) > (funcall fun link desk) > desk))) > > (setq org-make-link-description-function > #'yant/org-make-link-description-function) > #+end_src > > Example usage: > > #+begin_src emacs-lisp > (defun org-id-link-desk (link desk) > "Description function for id: link." > (let ((id (cadr (split-string link ":" > (org-with-point-at (org-id-find id 'marker) > (s-replace "||" "/" (yant/task-fulltitle) > > (org-link-set-parameters "id" > :desk #'org-id-link-desk) > #+end_src > > Best, > Ihor -- 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
Re: [O] exported contacts problem
There are a few options for contacts in org-mode that I have tried. I agree for a lot of contacts (probably more than a hundred or so), then native org-contacts might be too slow. In scimax I have tried a few different approaches to deal with this. The first is all org/elisp that uses a cache to speed up looking up contacts. See https://github.com/jkitchin/scimax/blob/master/contacts.el. The gist of this is you define a list of files that contacts will be in, and as long as they haven't changed since the cache was built the cache is used, and if they have changed the cache for that file is rebuilt. For large files, org parsing is not that fast in this, and I have not spent any time optimizing this. There are lots of ways to speed it up, but it hasn't been so slow to need solving yet. I use this code regularly, but nothing critical depends on it working. The downside of this is you have to maintain a list of files that serve as contact sources. I am pretty sure everything in it is compatible with org-contacts. This method is fine and I have about 5.8K contacts in this cache. I use this approach very regularly and have made some nice org-speedkeys for these contacts and other interesting ideas. The second approach is also related to caching, and uses a sqlite database as the cache. https://github.com/jkitchin/scimax/blob/master/org-db.el This approach uses a hook function to update the db any time the file is updated. I can access about 7500 contacts pretty quickly this way (evidently I have a lot of contacts outside the list of files designated as contacts in the first approach). I don't use this approach as much for contacts as for searching all headlines in all my org-files, but I built a contacts feature because I could. This approach could be expanded to a server based database but so far sqlite has served all my needs, and it has about 72K headlines indexed into it right now. The main benefit of this is mostly set it and forget it; contacts get updated as you make them or update them. The main benefit of both of these approaches is it lets you keep org as the primary way of creating contacts, including keeping all manner of notes associated with them in sub-headings. You can import contacts from anywhere just by writing code that creates the headings in org-contacts form. Since there is a cache, you could probably also write directly to the cache instead of making intermediate org files. The downside in my opinion is that I consider it acceptable for the cache to mostly work most of the time and it is not hard for them to get out of sync (and neither difficult for them to get resynced). For my work, there is very little consequence if I can't find a contact. You can organize your contacts as you see fit all over your file system, which is at times convenient, and at times hard to deal with. Duplicates, for example, are a challenge to deal with, and sometimes contacts seem to belong in more than one place. This is a limitation of org at the moment, there is no way to "transclude" a heading yet. You can create groups, these are just headings with multiple emails in the EMAIL property, as well as use todo states and tags on the contacts to select them with ivy/helm. I haven't converged on what the best way to do this kind of persistent caching. I also use it in org-ref for very large (20K) bibtex databases and it works fine there too. I also use mu4e, which indexes everything into a xapian database. It has about 9K contacts in it right now, and indexes about 100K messages. So far this works for me. It is more complicated to setup than the previous two options though. I wouldn't claim any of these can scale to 192K contacts, but it seems there are paths towards it. It would certainly take an eye and dedicated effort towards performance though. Jean Louis writes: > * Jude DaShiell [2019-08-02 17:48]: >> I have one email message with several .vcf file attachments. Has orgmode >> got any tool or tools I can use to import contacts from such a message >> into an orgmode table? > > And by all means, I would never keep contact in Org file, that is for > short list fine, but for any future planning, contacts shall be in a > real database sorted by its lists. > > A list could be group of people, or account name, or company name, or > organization, or interest lists. > > Neither bbdb nor Org is suitable for any serious collection of > contacts. I have 192,000+ contacts, and when they are in database and > I am using PostgreSQL, it gives me most of benefits, I can sort people > into lists, groups, I can contact them, count interactions, open up > their files, emails with a fast command, edit their data, add notes, > send them faxes and SMS, maintain relations. > > Jean -- 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
Re: [O] exported contacts problem
Maybe, but those are unusually high maildir numbers IMO. I have approx 8Gb of email messages, but only have a handful of maildirs - this is primarily why I prefer mu4e and org as a powerful mail workflow. I use to use the old model of sorting email into many different folders, but it was just too time consuming. My inbox was always large and I spent hours each week just sorting and refiling my messages. Now I just have a couple of maildirs for each account - inbox, archived, sent, draft and thats it. For messages I need to track, I create an org-todo with a mu4e link and if I need to find an old message, mu search works fine. Now my inbox has approx 20 messages and I spend no time sorting and refiling messages. Mutt is OK, but does not integrate well with emacs. I live in emacs, so I want my mail reader there as well. Jean Louis writes: > * Tim Cross [2019-08-02 23:26]: >> I tried gnus some time ago and use to use it when I read >> newsgroups. While I find it to be an extremely powerful and capable >> package, I never got comfortable with using it for mail. I once used VM >> and then mew, but now mu4e, which I think is fantastic. Part of what I >> like about it is the nice workflow I have with org-mode. > > mu4e is good maybe for small usage, it does not scale up[1]. With > 47783 maildir folders it cannot cope. It is unusable. > > A concept to read maildirs from a database is not good one. Database > index is for searching. Maildirs shall be read directly based upon the > specification. > > Package `maildir' is much faster to read maildirs. > > A search with `mu' can symlink found emails into specific folder and > `maildir' package can quickly read such folder. That is about the `mu' > search. > > Nothing beats `mutt'[2] for reading emails. > > Jean > > Footnotes: > [1] https://github.com/djcb/mu/issues/1440 > [2] https://www.mutt.org -- Tim Cross
Re: [O] exported contacts problem
* Tim Cross [2019-08-02 23:26]: > I tried gnus some time ago and use to use it when I read > newsgroups. While I find it to be an extremely powerful and capable > package, I never got comfortable with using it for mail. I once used VM > and then mew, but now mu4e, which I think is fantastic. Part of what I > like about it is the nice workflow I have with org-mode. mu4e is good maybe for small usage, it does not scale up[1]. With 47783 maildir folders it cannot cope. It is unusable. A concept to read maildirs from a database is not good one. Database index is for searching. Maildirs shall be read directly based upon the specification. Package `maildir' is much faster to read maildirs. A search with `mu' can symlink found emails into specific folder and `maildir' package can quickly read such folder. That is about the `mu' search. Nothing beats `mutt'[2] for reading emails. Jean Footnotes: [1] https://github.com/djcb/mu/issues/1440 [2] https://www.mutt.org
Re: [O] exported contacts problem
* Eric Abrahamsen [2019-08-02 23:11]: > > Neither bbdb nor Org is suitable for any serious collection of > > contacts. I have 192,000+ contacts, and when they are in database and > > I am using PostgreSQL, it gives me most of benefits, I can sort people > > into lists, groups, I can contact them, count interactions, open up > > their files, emails with a fast command, edit their data, add notes, > > send them faxes and SMS, maintain relations. > > That sounds pretty intense. Have you written a separate package for > interacting with the database? I wrote few generic functions and use it with helm, it works for me. It is not ready for public. Web interface works based on Gedafe[1] and then I wrote access to it through console Common Lisp and then also through Emacs Lisp. I am using Emacs module `emacs-libpq'[2] to interact with PostgreSQL. Let's say I am looking for somebody, Hyper-C asks me for query, I enter something, then I can choose to open Org file relating to the person. When dealing with various companies, things related to a company shall be in the directory related to company. Things related to person, for example assignments related to one person shall be in the file belonging to that person. That way full file can be sent to the person for review, it becomes clear what has been done, and what is yet to be done. Mixing assignments, TODO, agendas from all subjects, groups and persons into one file would give me terrible confusion. Jean Footnotes: [1] https://gedafe.github.io/index.en.html [2] https://github.com/anse1/emacs-libpq#start-of-content
Re: [O] exported contacts problem
I tried gnus some time ago and use to use it when I read newsgroups. While I find it to be an extremely powerful and capable package, I never got comfortable with using it for mail. I once used VM and then mew, but now mu4e, which I think is fantastic. Part of what I like about it is the nice workflow I have with org-mode. I've not yet worried too much about contact management though. Maybe I don't have any friends! I do find the combination of org-mode, mu4e and mbsync works well for my private and work email accounts (gmail, outlook and exchange or office365). As I work on both Linux and OSX, I don't worry about contacts and calendar invites too much as OSX just takes care of that for me (I have apple mail configured for my accounts, but rarely every use it). Mu4e has its own contact database built in, but it can also be configured to use BBDB (though I've not done that). I did need to tweak mu4e a little to work well with emacspeak. Tim Jude DaShiell writes: > I'm using nothing for contacts management by now. I don't use moo or > gnus since I've had limited success setting up either one of them. I > may take anotheeer throw at gnus since I have a gmail and panix account > and both accounts have usenet newsgroups capability. > > On Sat, 3 Aug 2019, Tim Cross wrote: > >> Date: Fri, 2 Aug 2019 16:33:37 >> From: Tim Cross >> To: emacs-orgmode@gnu.org >> Subject: Re: [O] exported contacts problem >> >> >> Are you using an emacs based email client like mu4e or gnus? What (if >> anything) do you use to manage contact information now i.e. BBDB, Asking as >> I am aware that some email clients have support for vcard processing and >> some contact managers also have support for vcard (i.e. bbdb), so >> initial processing may be easier from witin the mail client (new >> versions of mu4e are moving to use gnus as the message view mode, which >> has some advantced functions for dealing with vcard and ical >> attachments). >> >> There is also an org-vcard module, but last time I tried using this, I >> encountered some problems (can't remember what they were now - it was a >> while back, but it may have only support older vcard versions). >> >> Jude DaShiell writes: >> >> > I have one email message with several .vcf file attachments. Has orgmode >> > got any tool or tools I can use to import contacts from such a message >> > into an orgmode table? >> >> >> -- Tim Cross
Re: [O] exported contacts problem
Jean Louis writes: > * Jude DaShiell [2019-08-02 17:48]: >> I have one email message with several .vcf file attachments. Has orgmode >> got any tool or tools I can use to import contacts from such a message >> into an orgmode table? > > And by all means, I would never keep contact in Org file, that is for > short list fine, but for any future planning, contacts shall be in a > real database sorted by its lists. > > A list could be group of people, or account name, or company name, or > organization, or interest lists. > > Neither bbdb nor Org is suitable for any serious collection of > contacts. I have 192,000+ contacts, and when they are in database and > I am using PostgreSQL, it gives me most of benefits, I can sort people > into lists, groups, I can contact them, count interactions, open up > their files, emails with a fast command, edit their data, add notes, > send them faxes and SMS, maintain relations. That sounds pretty intense. Have you written a separate package for interacting with the database?
Re: [O] exported contacts problem
I would recommend the software named `abook'[1] as it can convert between the vcard format and CSV format, LDIF, and other formats handy to read them into the Emacs Lisp structure. It is available in many GNU/Linux system distributions[2]. Jean * Tim Cross [2019-08-02 22:34]: > > Are you using an emacs based email client like mu4e or gnus? What (if > anything) do you use to manage contact information now i.e. BBDB, Asking as > I am aware that some email clients have support for vcard processing and > some contact managers also have support for vcard (i.e. bbdb), so > initial processing may be easier from witin the mail client (new > versions of mu4e are moving to use gnus as the message view mode, which > has some advantced functions for dealing with vcard and ical > attachments). > > There is also an org-vcard module, but last time I tried using this, I > encountered some problems (can't remember what they were now - it was a > while back, but it may have only support older vcard versions). > > Jude DaShiell writes: > > > I have one email message with several .vcf file attachments. Has orgmode > > got any tool or tools I can use to import contacts from such a message > > into an orgmode table? Footnotes: [1] http://abook.sourceforge.net/ [2] https://www.gnu.org/distros/free-distros.html
Re: [O] exported contacts problem
I'm using nothing for contacts management by now. I don't use moo or gnus since I've had limited success setting up either one of them. I may take anotheeer throw at gnus since I have a gmail and panix account and both accounts have usenet newsgroups capability. On Sat, 3 Aug 2019, Tim Cross wrote: > Date: Fri, 2 Aug 2019 16:33:37 > From: Tim Cross > To: emacs-orgmode@gnu.org > Subject: Re: [O] exported contacts problem > > > Are you using an emacs based email client like mu4e or gnus? What (if > anything) do you use to manage contact information now i.e. BBDB, Asking as > I am aware that some email clients have support for vcard processing and > some contact managers also have support for vcard (i.e. bbdb), so > initial processing may be easier from witin the mail client (new > versions of mu4e are moving to use gnus as the message view mode, which > has some advantced functions for dealing with vcard and ical > attachments). > > There is also an org-vcard module, but last time I tried using this, I > encountered some problems (can't remember what they were now - it was a > while back, but it may have only support older vcard versions). > > Jude DaShiell writes: > > > I have one email message with several .vcf file attachments. Has orgmode > > got any tool or tools I can use to import contacts from such a message > > into an orgmode table? > > > --
Re: [O] exported contacts problem
Are you using an emacs based email client like mu4e or gnus? What (if anything) do you use to manage contact information now i.e. BBDB, Asking as I am aware that some email clients have support for vcard processing and some contact managers also have support for vcard (i.e. bbdb), so initial processing may be easier from witin the mail client (new versions of mu4e are moving to use gnus as the message view mode, which has some advantced functions for dealing with vcard and ical attachments). There is also an org-vcard module, but last time I tried using this, I encountered some problems (can't remember what they were now - it was a while back, but it may have only support older vcard versions). Jude DaShiell writes: > I have one email message with several .vcf file attachments. Has orgmode > got any tool or tools I can use to import contacts from such a message > into an orgmode table? -- Tim Cross
Re: [O] getting access to a self-invented option?
Could you just use a tag for this? My shallow thought is that if you tagged headlines, over time you could use different tags for different content type whereas if you use a new custom type, you would need to repeat the definition process (whatever that might be) every time you discovered a new required type. This would also enable you to benefit from some of the other nice attributes of tags, such as inheritance. Matt Price writes: > I'm trying to streamline some veyr ad-hoc workflows I have. One thing I do > a lot during the school year is make some changes to an org source file, > and then export to hugo markdown with ox-hugo, and finally commit to git > (after that I have a git hook that generates the website & uploads the > changed pages to the appropriate location, usually a github-pages branch or > separate repo). > > So I have this code: > > (defun mwp-hugo-export-and-release () > "Make it faster and easier to put my lectures up on the website." > (interactive) > > (let* ((modfile (org-hugo-export-wim-to-md)) > (basedir (plist-get (org-export-get-environment 'hugo) > ':hugo-base-dir )) > (default-directory (expand-file-name basedir))) > (magit-stage-file modfile) > ;; (magit-status) > (magit-commit-create) > ) ) > > It works great, I'm very happy. HOWEVER: in my websites I have two kinds of > outputs: > > - regular pages -- these get exported to .md files and turned into html by > hugo > - lecture notes -- these get exported to reveal.js HTML pages by > org-re-reveal and my hugo theme treats them differently . > > I would really like to set a switch somewhere in the file, something like: > > #+MWP_EXPORT_TYPE: slides > > And then something like > > let* ((modfile (if (eq :mwp-export-type "slides") > (mwp-hugo-reveal-custom-export-function) >(org-hugo-export-wim-to-md))) > etc) > do stuff) > > > But I'm not sure how to get access to a totally non-standard option like > the kind I just invented in that last bit of pseudo-code. Anyone have a > good suggestion? > > Thank you as always! > > Matt -- Tim Cross
[O] getting access to a self-invented option?
I'm trying to streamline some veyr ad-hoc workflows I have. One thing I do a lot during the school year is make some changes to an org source file, and then export to hugo markdown with ox-hugo, and finally commit to git (after that I have a git hook that generates the website & uploads the changed pages to the appropriate location, usually a github-pages branch or separate repo). So I have this code: (defun mwp-hugo-export-and-release () "Make it faster and easier to put my lectures up on the website." (interactive) (let* ((modfile (org-hugo-export-wim-to-md)) (basedir (plist-get (org-export-get-environment 'hugo) ':hugo-base-dir )) (default-directory (expand-file-name basedir))) (magit-stage-file modfile) ;; (magit-status) (magit-commit-create) ) ) It works great, I'm very happy. HOWEVER: in my websites I have two kinds of outputs: - regular pages -- these get exported to .md files and turned into html by hugo - lecture notes -- these get exported to reveal.js HTML pages by org-re-reveal and my hugo theme treats them differently . I would really like to set a switch somewhere in the file, something like: #+MWP_EXPORT_TYPE: slides And then something like let* ((modfile (if (eq :mwp-export-type "slides") (mwp-hugo-reveal-custom-export-function) (org-hugo-export-wim-to-md))) etc) do stuff) But I'm not sure how to get access to a totally non-standard option like the kind I just invented in that last bit of pseudo-code. Anyone have a good suggestion? Thank you as always! Matt
Re: [O] exported contacts problem
I have about 80 contacts so this is a personal contacts situation not a business contacts situation. On Fri, 2 Aug 2019, Jean Louis wrote: > Date: Fri, 2 Aug 2019 12:02:36 > From: Jean Louis > To: Jude DaShiell > Cc: emacs-orgmode@gnu.org > Subject: Re: [O] exported contacts problem > > * Jude DaShiell [2019-08-02 17:48]: > > I have one email message with several .vcf file attachments. Has orgmode > > got any tool or tools I can use to import contacts from such a message > > into an orgmode table? > > And by all means, I would never keep contact in Org file, that is for > short list fine, but for any future planning, contacts shall be in a > real database sorted by its lists. > > A list could be group of people, or account name, or company name, or > organization, or interest lists. > > Neither bbdb nor Org is suitable for any serious collection of > contacts. I have 192,000+ contacts, and when they are in database and > I am using PostgreSQL, it gives me most of benefits, I can sort people > into lists, groups, I can contact them, count interactions, open up > their files, emails with a fast command, edit their data, add notes, > send them faxes and SMS, maintain relations. > > Jean > --
Re: [O] exported contacts problem
* Jude DaShiell [2019-08-02 17:48]: > I have one email message with several .vcf file attachments. Has orgmode > got any tool or tools I can use to import contacts from such a message > into an orgmode table? And by all means, I would never keep contact in Org file, that is for short list fine, but for any future planning, contacts shall be in a real database sorted by its lists. A list could be group of people, or account name, or company name, or organization, or interest lists. Neither bbdb nor Org is suitable for any serious collection of contacts. I have 192,000+ contacts, and when they are in database and I am using PostgreSQL, it gives me most of benefits, I can sort people into lists, groups, I can contact them, count interactions, open up their files, emails with a fast command, edit their data, add notes, send them faxes and SMS, maintain relations. Jean
[O] [Feature proposal] Add :description function to org-link-parameters
Hi, Wondering if anyone is interested in adding a new org-link property to customise generating the link description. For now, there is global org-link-make-description-function, which is shared among all the link types. If would be more convenient if the description function can be set independently for different link types. I propose to use :description property in org-link-parameters. A sample implementation working with current org version is below: #+begin_src emacs-lisp (defun yant/org-make-link-description-function (link desk) "Return description of the link LINK according to :description link property. Return DESK if :desk is not set." (let ((fun (org-link-get-parameter (car (split-string link ":")) :description))) (if (functionp fun) (funcall fun link desk) desk))) (setq org-make-link-description-function #'yant/org-make-link-description-function) #+end_src Example usage: #+begin_src emacs-lisp (defun org-id-link-desk (link desk) "Description function for id: link." (let ((id (cadr (split-string link ":" (org-with-point-at (org-id-find id 'marker) (s-replace "||" "/" (yant/task-fulltitle) (org-link-set-parameters "id" :desk #'org-id-link-desk) #+end_src Best, Ihor -- Ihor Radchenko, PhD, Center for Advancing Materials Performance from the Nanoscale (CAMP-nano) State Key Laboratory for Mechanical Behavior of Materials, Xi'an Jiaotong University, Xi'an, China Email: yanta...@gmail.com, ihor_radche...@alumni.sutd.edu.sg
Re: [O] exported contacts problem
* Jude DaShiell [2019-08-02 17:48]: > I have one email message with several .vcf file attachments. Has orgmode > got any tool or tools I can use to import contacts from such a message > into an orgmode table? There is package `org-vcard' that you may use. Other vcard related packages: - bbdb-vcard to import into bbdb - vdirel I wish those package authors would have better and more generic functions so that vcards can be imported first to Lisp structures, like alists, etc. so that vcard functions can be reused. By looking onto `org-card' it does not seem to be so, sadly. Jean
[O] exported contacts problem
I have one email message with several .vcf file attachments. Has orgmode got any tool or tools I can use to import contacts from such a message into an orgmode table? --
[O] org-id fixups and minor changes
Hi! I've pushed a couple of fixes and changes to master related to org-id. First; a fix and a (major) speedup and method-change for how the global caching works for ID's. The change in method is that providing file's as arguments to org-id-update-id-locations no longer breaks the existing id locations. Second; I've added a customization so one can choose to cache the id-locations as relative to the org-id-locations-file instead of as absolute links. This helps a lot when running a system mirrored on multiple machines where the absolute paths to ones documents might differ, but where it's all the same relative to the org-id-locations-file. Third; I've added another ID generator method. The extremists might say the new method is not unique enough but org-mode is a personal system first and foremost, so I think there is merit to this new ID method. It creates ID's based on current timestamp and doesn't try to hide the timestamp from the user. One might call the ID's "natural" since they are contain information in themselves. Certainly a good thing for some. The new method will not be active unless explicitly chosen by the user. As a side note, if using ID's together with attachments, try this new ID-generator out by setting org-id-method to ts (short for timestamp) and change the org-attach-id-to-path-function to something like "/MM/DDTHHMMSS" for more human readable attachment folders. Org-id is next to undocumented in the manual so I didn't find a good place to add this. A few lines are added to org-news though. This is the first push by me without first doing an RFC. So, naturally, if anything is out of order mail back and/or make changes directly in the repo if needed. Tests passed anyways. Kind regards Gustav
Re: [O] CUSTOM_ID vs ID
On Sun, Jul 28, 2019 at 3:10 AM Nicolas Goaziou wrote: > Hello, > > Nathan Neff writes: > > > I've often been confused why org-mode has both a CUSTOM_ID > > and a ID property. I mean, why not just use one or the other name? > > Custom ID are user-defined, and only meaningful in the scope of the > document. Also, they may appear as-is when exported, e.g., as an anchor > in HTML. > > ID are (or should be) generated by Org, and are valid across files, > which means they need to be absolutely unique. > > Org keeps track of ID if `org-id-track-globally' is non-nil (the > default). If this is nil, there is almost no difference between ID and > custom ID. > > > When would I ever have both an ID and a CUSTOM_ID property for > > a heading? > > You may want to refer to a heading from anywhere with id:... but need > a clean anchor in HTML export, for example. > > FWIW, I never use ID property. > Hi Nicolas, Ah yes, I remember when I was exporting to HTML and would have both properties. Thank you. Also, I think I will stick with ID purely because I want links which span multiple org mode files. I also plan to learn some more Emacs Lisp to make this link creation thing a bit easier. I know there's been efforts to get org to behave a lot like a Wiki (which I think it already does): https://orgmode.org/worg/org-blog-wiki.html I'd like to mess with Helm and get a custom helm source. org-insert-link can already use Helm, but it could be improved a bit. * Show the IDs (*and* headings :-) of recently created links (because you know, the IDs are hash codes (grumble grumble). Currently Helm just shows the IDs :-( * Show a second Helm list of headings (perhaps all headings in org-mode files) - If heading already has an ID, then simply use that ID. * Provide a context menu, where you can choose to create an ID - Provide a mini buffer to *specify* an ID (evil laugh). Default action will create an ID Thanks, --Nate > > Regards, > > -- > Nicolas Goaziou >