Provided by: m17n-docs_1.6.2-5_all bug

NAME

       minput_get_command - Get information about input method command(s).

SYNOPSIS

       MPlist* minput_get_command (MSymbol language, MSymbol name, MSymbol command)

DESCRIPTION

       Get information about input method command(s). The minput_get_command() function returns
       information about the command command of the input method specified by language and name.
       An input method command is a pseudo key event to which one or more actual input key
       sequences are assigned.

       There are two kinds of commands, global and local. A global command has a global
       definition, and the description and the key assignment may be inherited by a local
       command. Each input method defines a local command which has a local key assignment. It
       may also declare a local command that inherits the definition of a global command of the
       same name.

       If language is Mt and name is Mnil, this function returns information about a global
       command. Otherwise information about a local command is returned.

       If command is Mnil, information about all commands is returned.

       The return value is a well-formed plist (Property List) of this format:

         ((NAME DESCRIPTION STATUS [KEYSEQ ...]) ...)

       NAME is a symbol representing the command name.

       DESCRIPTION is an M-text describing the command, or Mnil if the command has no
       description.

       STATUS is a symbol representing how the key assignment is decided. The value is Mnil (the
       default key assignment), Mcustomized (the key assignment is customized by per-user
       customization file), or Mconfigured (the key assignment is set by the call of
       minput_config_command()). For a local command only, it may also be Minherited (the key
       assignment is inherited from the corresponding global command).

       KEYSEQ is a plist of one or more symbols representing a key sequence assigned to the
       command. If there's no KEYSEQ, the command is currently disabled (i.e. no key sequence can
       trigger actions of the command).

       If command is not Mnil, the first element of the returned plist contains the information
       about command.

RETURN VALUE

       If the requested information was found, a pointer to a non-empty plist is returned. As the
       plist is kept in the library, the caller must not modify nor free it.

       Otherwise (the specified input method or the specified command does not exist), NULL is
       returned.

Example:

           MText *
           get_im_command_description (MSymbol language, MSymbol name, MSymbol command)
           {
             /* Return a description of the command COMMAND of the input method
                specified by LANGUAGE and NAME.  */
             MPlist *cmd = minput_get_command (langauge, name, command);
             MPlist *plist;

             if (! cmds)
               return NULL;
             plist = mplist_value (cmds);  /* (NAME DESCRIPTION STATUS KEY-SEQ ...) */
             plist = mplist_next (plist);  /* (DESCRIPTION STATUS KEY-SEQ ...) */
             return  (mplist_key (plist) == Mtext
                      ? (MText *) mplist_value (plist)
                      : NULL);
           }

COPYRIGHT

       Copyright (C) 2001 Information-technology Promotion Agency (IPA)
       Copyright (C) 2001-2011 National Institute of Advanced Industrial Science and Technology
       (AIST)
       Permission is granted to copy, distribute and/or modify this document under the terms of
       the GNU Free Documentation License <http://www.gnu.org/licenses/fdl.html>.