File: PKG-INFO

package info (click to toggle)
python-epc 0.0.5-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 156 kB
  • sloc: python: 1,166; makefile: 3
file content (132 lines) | stat: -rw-r--r-- 4,693 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
Metadata-Version: 1.0
Name: epc
Version: 0.0.5
Summary: EPC (RPC stack for Emacs Lisp) implementation in Python
Home-page: https://github.com/tkf/python-epc
Author: Takafumi Arakaki
Author-email: aka.tkf@gmail.com
License: GNU General Public License v3 (GPLv3)
Description: 
        EPC (RPC stack for Emacs Lisp) for Python
        =========================================
        
        Links:
        
        * `Documentation <http://python-epc.readthedocs.org/>`_ (at Read the Docs)
        * `Repository <https://github.com/tkf/python-epc>`_ (at GitHub)
        * `Issue tracker <https://github.com/tkf/python-epc/issues>`_ (at GitHub)
        * `PyPI <http://pypi.python.org/pypi/epc>`_
        * `Travis CI <https://travis-ci.org/#!/tkf/python-epc>`_ |build-status|
        
        Other resources:
        
        * `kiwanami/emacs-epc <https://github.com/kiwanami/emacs-epc>`_
          (Client and server implementation in Emacs Lisp and Perl.)
        * `tkf/emacs-jedi <https://github.com/tkf/emacs-jedi>`_
          (Python completion for Emacs using EPC server.)
        
        .. |build-status|
           image:: https://secure.travis-ci.org/tkf/python-epc.png
                   ?branch=master
           :target: http://travis-ci.org/tkf/python-epc
           :alt: Build Status
        
        
        What is this?
        -------------
        
        EPC is an RPC stack for Emacs Lisp and Python-EPC is its server side
        and client side implementation in Python.  Using Python-EPC, you can
        easily call Emacs Lisp functions from Python and Python functions from
        Emacs.  For example, you can use Python GUI module to build widgets
        for Emacs (see `examples/gtk/server.py`_ for example).
        
        Python-EPC is tested against Python 2.6, 2.7 and 3.2.
        
        Install
        -------
        
        To install Python-EPC and its dependency sexpdata_, run the following
        command.::
        
           pip install epc
        
        .. _sexpdata: https://github.com/tkf/sexpdata
        
        
        Usage
        -----
        
        Save the following code as ``my-server.py``.
        (You can find functionally the same code in `examples/echo/server.py`_)::
        
           from epc.server import EPCServer
        
           server = EPCServer(('localhost', 0))
        
           @server.register_function
           def echo(*a):
               return a
        
           server.print_port()
           server.serve_forever()
        
        
        And then run the following code from Emacs.
        This is a stripped version of `examples/echo/client.el`_ included in
        Python-EPC repository_.::
        
           (require 'epc)
        
           (defvar my-epc (epc:start-epc "python" '("my-server.py")))
        
           (deferred:$
             (epc:call-deferred my-epc 'echo '(10))
             (deferred:nextc it
               (lambda (x) (message "Return : %S" x))))
        
           (message "Return : %S" (epc:call-sync my-epc 'echo '(10 40)))
        
        
        .. _examples/echo/server.py:
           https://github.com/tkf/python-epc/blob/master/examples/echo/server.py
        .. _examples/echo/client.el:
           https://github.com/tkf/python-epc/blob/master/examples/echo/client.el
        
        If you have carton_ installed, you can run the above sample by
        simply typing the following commands::
        
           make elpa        # install EPC in a separated environment
           make run-sample  # run examples/echo/client.el
        
        .. _carton: https://github.com/rejeep/carton
        
        
        For example of bidirectional communication and integration with GTK,
        see `examples/gtk/server.py`_.  You can run this example by::
        
           make elpa
           make run-gtk-sample  # run examples/gtk/client.el
        
        .. _examples/gtk/server.py:
           https://github.com/tkf/python-epc/blob/master/examples/gtk/server.py
        
        
        License
        -------
        
        Python-EPC is licensed under GPL v3.
        See COPYING for details.
        
        
Keywords: Emacs,RPC
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Emacs-Lisp