GNU Info

Info Node: (eudc)Inline Query Expansion

(eudc)Inline Query Expansion


Next: The Server Hotlist Prev: Display of Query Results Up: Usage
Enter node , (file) or (file)node

Inline Query Expansion
======================

   Inline query expansion is a powerful method to get completion from
your directory server.  The most common usage is for expanding names to
email addresses in mail message buffers.  The expansion is performed by
the command `M-x eudc-expand-inline' which is available from the
`Expand Inline Query' menu item but can also be conveniently bound to a
key shortcut (Note: Installation).  The operation is controlled by
the variables `eudc-inline-expansion-format',
`eudc-inline-query-format', `eudc-expanding-overwrites-query' and
`eudc-multiple-match-handling-method'.

   If the query fails for a server, other servers may be tried
successively until one of them finds a match (Note: Multi-server
Queries).

 - Command: eudc-expand-inline replace-p
     Query the server and expand the query string before point.  The
     query string consists of the buffer substring from the point back
     to the preceding comma, colon or beginning of line.
     `eudc-inline-query-format' controls how individual words are
     mapped onto directory attribute names.  After querying the server
     for the given string, the expansion specified by
     `eudc-inline-expansion-format' is inserted in the buffer at point.
     If REPLACE-P is `t' then this expansion replaces the query string
     in the buffer.  If `eudc-expanding-overwrites-query' is non-`nil'
     then the meaning of REPLACE-P is negated.

 - Variable: eudc-inline-query-format
     Format of an inline expansion query.  This is actually a list of
     FORMATs.  A FORMAT is a list of one or more EUDC attribute names.
     A FORMAT applies if it contains as many attributes as individual
     words in the inline query string.  If several FORMATs apply then
     they are tried in order until a match is found.  If `nil' all the
     words will be mapped onto the default server/protocol attribute
     name (generally `name').

     For instance, use the following
          (setq eudc-inline-query-format '((name)
                                           (firstname)
                                           (firstname name)))

     to indicate that single word expansion queries are to be
     considered as surnames and if no match is found then they should
     be tried as first names.  Inline queries consisting of two words
     are considered as consisting of a first name followed by a
     surname.  If the query consists of more than two words, then the
     first one is considered as the first name and the remaining words
     are all considered as surname constituents.

     FORMATs are in fact not limited to EUDC attribute names, you can
     use server or protocol specific names in them.  It may be safer if
     you do so, to set the variable `eudc-inline-query-format' in a
     protocol or server local fashion (see Note: Server/Protocol
     Locals).

     For instance you could use the following to match up to three words
     against the `cn' attribute of LDAP servers:
          (eudc-protocol-set 'eudc-inline-query-format
                             '((cn)
                               (cn cn)
                               (cn cn cn))
                             'ldap)

 - Variable: eudc-inline-expansion-format
     This variable lets you control exactly what is inserted into the
     buffer upon an inline expansion request.  It is a list whose first
     element is a string passed to `format'.  Remaining elements are
     symbols corresponding to directory attribute names.  The
     corresponding attribute values are passed as additional arguments
     to `format'.  Default is `("%s" email)' but you may want to
     consider a value like `("%s <%s>" name email)'

 - Variable: eudc-multiple-match-handling-method
     This variable controls what to do when multiple entries match a
     query for an inline expansion.  Possible values are:
    `first'
          The first match is considered as being the only one, the
          others are discarded.

    `select'
          A selection buffer pops up where you can choose a particular
          match.  This is the default value of the variable.

    `all'
          The expansion uses all records successively

    `abort'
          An error is signaled.  The expansion aborts.

     Default is `select'


automatically generated by info2www version 1.2.2.9