emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Russell Adams <RLAdams@AdamsInfoServ.Com>
To: emacs-orgmode@gnu.org
Subject: Re: [Orgmode] Re: contact management in org-mode?
Date: Thu, 19 Jul 2012 06:10:50 -0500	[thread overview]
Message-ID: <20120719111050.GO27588@cardamom.adamsinfoserv.com> (raw)
In-Reply-To: <20091120143235.GB3439@thinkpad.adamsinfoserv.com>

Regarding contact management in Org the way I described it below, I
wanted to share issues I've had since.

First, I've found myself very lax updating my Contacts.org file. With
a moderately large contact file column mode goes so slowly I find
myself reluctant to use it. Thus my contact list is now significantly
out of date despite my successful integration with mutt.

Another issue with column view is that I can't make the first column
(ie: Name!) sticky, so if I scroll right while filling in fields I
have no idea who I'm working on. Editing individual fields in the
property drawer is moderately ok.

The final killer is lack of sync. I have lbdb capturing incoming email
addresses, and I find I use it constantly without thinking about it. I
typically get contact information in signature lines with my customers
and I've found myself doing fast searching in mutt and using a recent
email instead of using Contacts.org. No sync with my Google account
means my phone now has an independent contact list again.

I did see someone created a org-contacts.el based on the format, but
their site is now offline.

So after a three year experiment, I think I can say my org-mode
contact management has failed.

Thus I pose the question: What is a valid contact manager for a
console-mode user with sync, fast searching and update?

Thanks.

On Fri, Nov 20, 2009 at 08:32:35AM -0600, Russell Adams wrote:
> On Fri, Oct 30, 2009 at 10:26:07PM -0500, Russell Adams wrote:
> > Looking into this some more, export is really easy. I can just use a
> > dynamic block to store column view in whatever format I choose, and
> > export then search & replace ',' for '|'. That is minimal effort!
> >
> > Sparse searches in column view, hierarchy organization, etc. I'm
> > trying to find a problem here.
>
> I've just converted all my contacts into an Org file, and will
> document below how it is organized.
>
> First is Contacts.org:
>
> --------------------------------------------------------
> #+COLUMNS:  %20ITEM %15Company %10Title %WorkEmail %WorkPhone %WorkMobile %WorkFax %10WorkStreet %WorkCity %WorkState %WorkPostal %HomeEmail %HomePhone %HomeMobile %10HomeStreet %HomeCity %HomeState %HomePostal
>
> * Contacts
>
> ** Adams, Russell
>    :PROPERTIES:
>    :Company:      Adams Information Services LLC
>    :Title:        Principal Consultant
>    :WorkEmail:    rladams@adamsinfoserv.com
>    :WorkPhone:
>    :WorkMobile:
>    :WorkFax:
>    :WorkStreet:
>    :WorkCity:
>    :WorkState:
>    :WorkPostal:
>    :HomeEmail:
>    :HomePhone:
>    :HomeMobile:
>    :HomeStreet:
>    :HomeCity:
>    :HomeState:
>    :HomePostal:
>    :END:
>
> What a super guy!
> --------------------------------------------------------
>
> I could have multiple top level headings for organization. Making a
> contact a subheading also lets me use C-c / (spare tree searchs) to
> limit the list of contacts.
>
> With the column view modeline, I can edit contacts in long format, or
> change fields in column view.
>
> Next I needed a way to lookup addresses for Mutt. Lbdb is very
> effective, but given I don't use BBDB anymore I required an
> alternative.
>
> I still like lbdb's inmail filter, so I continue to use that. I wrote
> a quick lbdb module to find contacts in Contacts.org.
>
> ~/.lbdb/lbdbrc:
> --------------------------------------------------------
> MODULES_PATH="/usr/lib/lbdb /home/rladams/.lbdb/modules"
> METHODS="m_inmail m_gpg m_orgcontact"
> --------------------------------------------------------
>
> ~/.lbdb/modules/m_orgcontact:
> --------------------------------------------------------
> #! /bin/sh
>
> m_orgcontact_query()
> {
>
>     /home/rladams/.lbdb/modules/orgcontact.pl $1
>
> }
> --------------------------------------------------------
>
>
> ~/.lbdb/modules/orgcontact.pl: (note the hardcoded Contacts.org file)
> --------------------------------------------------------
> #!/usr/bin/perl
>
> use strict;
> use warnings;
>
> # Read org headers are records
>
> $/="\n*";
>
> open(MYFILE,"/home/rladams/doc/OrgFiles/Contacts.org");
> my @rawcontacts = <MYFILE>;
> close(MYFILE);
>
> $/="\n";
>
> foreach (@rawcontacts) {
>   if ( $_ =~ m/$ARGV[0]/i ){
>
>     my $name;
>
>     foreach (split("\n",$_)) {
>
>       # The first line is the name
>       unless (defined $name) {
>         $name = $_;
>         $name =~ s/^\s*\**\s*//;
>         $name =~ s/\s*$//;
>       }
>
>       if (m/^\s+:.*email.*:/i) {
>         my $email = $_;
>         $email =~ s/^\s+:\S+:\s+(\S+)/$1/g;
>         $email =~ s/\s*$//;
>
>         printf("%s\t%s\t((Org))\n", $email, $name);
>
>       }
>
>     }
>
>   }
>
> }
> --------------------------------------------------------
>
> Given I still use lbdbq in Mutt for address lookups, now it returns
> one row per email property using the name from the headline.
>
> Next, to make data entry faster, I've defined a yasnippet which
> contains all the properties in a tab list.
>
> ~/.emacs/snippets/text-mode/org-mode/contact:
> --------------------------------------------------------
> #contact : Add a contact w/ PROPERTY drawer
> # --
> ** $1
>    :PROPERTIES:
>    :Company:      $2
>    :Title:        $3
>    :WorkEmail:    $4
>    :WorkPhone:    $5
>    :WorkMobile:   $7
>    :WorkFax:      $8
>    :WorkStreet:   $9
>    :WorkCity:     $10
>    :WorkState:    $11
>    :WorkPostal:   $12
>    :HomeEmail:    $13
>    :HomePhone:    $14
>    :HomeMobile:   $15
>    :HomeStreet:   $16
>    :HomeCity:     $17
>    :HomeState:    $18
>    :HomePostal:   $19
>    :END:
>
> $0
>
> --------------------------------------------------------
>
> This also helps keep the property list consistent.
>
> I hope this helps someone else.
>
> Thanks.
>
> ------------------------------------------------------------------
> Russell Adams                            RLAdams@AdamsInfoServ.com
>
> PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/
>
> Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>


------------------------------------------------------------------
Russell Adams                            RLAdams@AdamsInfoServ.com

PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/

Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3

  reply	other threads:[~2012-07-19 11:11 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-07  0:17 contact management in org-mode? Lindsay Todd
2009-10-07  2:21 ` Maurizio Vitale
2009-10-07  4:16   ` Bernt Hansen
2009-10-25  2:34     ` Russell Adams
2009-10-25  6:04       ` Charles Philip Chan
2009-10-25 13:51         ` Darlan Cavalcante Moreira
2009-10-25 14:14           ` Charles Philip Chan
2009-10-25 14:18           ` Richard Riley
2009-10-25 14:22           ` Russell Adams
2009-10-29  7:58       ` Eric S Fraga, Eric S Fraga
2009-10-29 15:46         ` Gregory J. Grubbs
2009-10-29 16:00           ` Richard Riley
2009-10-29 17:36             ` Russell Adams
2009-10-29 20:00               ` Alan E. Davis
2009-10-29 22:25                 ` Eric S Fraga
2009-10-30  8:48                 ` Uwe Jochum
2009-10-31  3:10                   ` Russell Adams
2009-10-31  3:26                     ` Russell Adams
2009-10-31 16:38                       ` Gregory J. Grubbs
2009-11-20 14:32                       ` Russell Adams
2012-07-19 11:10                         ` Russell Adams [this message]
2012-07-20  0:57                           ` [Orgmode] " Karl Voit
2012-08-08 12:04                           ` Thomas Koch
2012-08-08 12:14                             ` Bastien
2012-08-09 11:31                             ` Jose E. Marchesi
2012-08-10  5:48                             ` Russell Adams
2012-08-13 22:24                               ` Semantics, Tagging, File systems, Tools, tagstore (was: [Orgmode] Re: contact management in org-mode?) Karl Voit
2012-08-09 12:04                           ` [Orgmode] Re: contact management in org-mode? Sriram Karra
2009-11-02 10:37                     ` Eric S Fraga, Eric S Fraga
2009-11-08  5:59                     ` Ben Finney
2009-11-08 14:52                       ` Matt Lundin
2009-11-08 22:22                         ` Sebastian Rose
2009-11-11 13:19                           ` Sebastian Rose
2009-11-09  6:41                         ` Gour
2009-11-15 20:50                         ` Sean Sieger
2009-10-31 21:54                   ` Shelagh Manton
2009-10-08 17:13 ` Sean Sieger
  -- strict thread matches above, loose matches on Subject: below --
2012-11-21 21:15 Babel source blocks Russell Adams
2012-03-19 15:01 table spreadsheet problem Martin Halder
2012-03-19 15:32 ` Russell Adams
2012-03-19 15:45   ` Martin Halder
2012-03-19 15:48     ` Russell Adams
2012-03-15 17:45 Latex Listings & Floats Russell Adams
2012-03-15 20:33 ` Sebastien Vauban
2011-07-24  8:00 Table formula to convert hex to dec Russell Adams
2011-07-24  9:52 ` Michael Brand
2011-07-24 16:39   ` Michael Brand
2011-02-27  1:36 Startup page Matthew Sauer
2011-02-27  2:57 ` Dan Davison
2011-02-28 20:35   ` Eric S Fraga
2011-02-27 10:15 ` Bastien
2011-02-27 14:03   ` Christian Mandel
2011-02-28 11:51 ` Konrad Hinsen
2011-03-11  5:59   ` Ido Magal
2011-03-11  7:56     ` Rainer M Krug
     [not found]       ` <improv.philosophy@gmail.com>
2011-03-06  2:49         ` Bug: Org-Contacts.el [7.4] U-SWEETSAUERPORT\Matthew Sauer
2011-03-06  4:47           ` Nick Dokos
2011-03-06 19:50             ` Matthew Sauer
2011-03-06 20:02               ` Matthew Sauer
2011-03-06 23:20                 ` Bastien
2011-03-07  1:26                   ` Matthew Sauer
2011-03-07 17:32                     ` Achim Gratz
2011-03-16 16:19       ` Re: [Orgmode] Startup page Matthew Sauer
2011-03-16 16:45         ` Nick Dokos
2011-03-17 10:34           ` Matthew Sauer
2011-03-17 10:52             ` Filippo A. Salustri
2011-03-17 22:17               ` Matthew Sauer
2011-03-17 22:48                 ` Nick Dokos
2011-03-18  0:03                   ` Filippo A. Salustri
2011-03-18  0:08                     ` Bastien
2011-03-18  0:22                       ` Matthew Sauer
2009-10-29 23:29 [OT] lisp func to write timestamp to buffer Marcelo de Moraes Serpa
2009-10-30  0:47 ` Russell Adams
2009-10-30  2:44 ` Nick Dokos
2009-10-30  2:53   ` Russell Adams
2009-09-08 20:41 Correct Way to Customize LaTeX Export? Peter Jones
2009-09-08 20:49 ` Russell Adams
     [not found]   ` <RLAdams@AdamsInfoServ.Com>
2009-09-08 21:11     ` Nick Dokos
2009-10-30  3:17     ` [OT] lisp func to write timestamp to buffer Nick Dokos
2011-07-24 15:58     ` Table formula to convert hex to dec Nick Dokos
2012-01-25 17:34     ` ICS import? Russell Adams
2012-01-25 17:50     ` Nick Dokos
     [not found]       ` <CALRk1sZc5JL_zY8Xnt+XDZfgqMmtQb4XXia4UmrP4f4sdOopCw@mail.gmail.com>
     [not found]         ` <3023.1327520270@alphaville>
     [not found]           ` <CALRk1sZ9YC9ftvB4wK84i4-68FF3kYPwhuYm9n=iwvsKerRMRQ@mail.gmail.com>
     [not found]             ` <4180.1327526628@alphaville>
2012-01-25 22:26               ` Matthew Sauer
2012-01-25 23:51                 ` Russell Adams
2012-01-26  0:03                   ` Arun Persaud
2012-01-26  0:21                   ` Nick Dokos
2012-01-26  0:58                     ` Russell Adams
2012-03-15 19:56     ` Latex Listings & Floats Nick Dokos
2012-03-19 15:56     ` table spreadsheet problem Nick Dokos
2012-03-19 16:05       ` Russell Adams
2012-03-19 16:25       ` Martin Halder
2012-03-19 17:42     ` Nick Dokos
2012-03-19 17:54       ` Russell Adams
2012-03-19 18:01         ` Nick Dokos
2012-03-19 18:21           ` Russell Adams
2012-05-15  2:57     ` ICS import? Nick Dokos
2012-05-15  3:03       ` Nick Dokos
2012-08-10  6:41     ` [Orgmode] Re: contact management in org-mode? Nick Dokos
2012-08-10 11:40       ` Sriram Karra
2012-08-10 14:03         ` Nick Dokos
2012-11-21 22:06     ` Babel source blocks Nick Dokos
2012-11-21 22:15       ` Russell Adams
2012-11-21 22:44     ` Nick Dokos
2012-11-21 22:53       ` Russell Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120719111050.GO27588@cardamom.adamsinfoserv.com \
    --to=rladams@adamsinfoserv.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).