Giter Club home page Giter Club logo

emacs-epc's People

Contributors

edwardbetts avatar kiwanami avatar niku avatar ramnes avatar syohex avatar tkf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

emacs-epc's Issues

How to tell to peer about error due to S-exp decoding

Python EPC のバグで時々 Emacsから送られてきた s-exp のデコードをミスってエラーを出してしまうのですが、この場合どうやってエラーを通知したら良いんでしょうか。 epc-error で通知しようにも s-exp のデコード前なので uid が不明です。とりあえず uid=0 や nil を返せば "RET-EPC-ERR: NOT FOUND:" と通知してくれるようなので、その方針でいこうと思いますが、いつかプロトコルがはっきりすると良いなと思います。

どちらにせよ Python EPC のバグを直せば問題にならないので急ぎのリクエストでは無いのですが、気になったので。

tkf/emacs-jedi#7 (comment)

concurrent or defferred?

emacs-epc requires 'concurrent, which isn't provided.
Maybe it should use 'defferred ?

Thanks!

No README

This project has no README.

I arrived here from a site that has this project as a dependency, which suggests this project is for real and meant to be used, but it is extremely off-putting that there is not even the smallest README.

At a minimum, I'd expect to find

  • indication of status - is this experimental/alpha/beta/stable etc. If it is totally experimental, that's fine, I know not to use it, but one line to tell me so would be extremely useful.
  • license information
  • installation instructions
  • docs link
  • or, a link to a site that will contain all of the above.

My normal policy is "docs or it doesn't exist"

Thanks!

process epc con 3 not running

M x : webkit-open-url to open url.
I got this error.
system : ubuntu 16.04 LTS
emacs : gnuemacs 26
how i fix this problem?
help me . please

Doom Emacs: Package CL is Depreciated => Latest Version

I was currently installing packages and found the error that emacs displays when i open it up in doom version. I found out that the Unicode module/package is the reason for the message. The moment I installed this package the message above started to show. As soon as I commented the Unicode module the message no longer appeared. So boys, You better find an alternative to the Unicode module in doom emacs.

Error Occurs when:
Unicode
Error is solved when:
;; Unicode

I will submit an alternative to the Unicode package when i find one.

How can I connect to existing process with specified ports?

Hi.

I'm currently working on EPC implementation on Scala (called Scala-elrpc).

I want to use Scala-elrpc to connect to running GUI application, but I don't know how.
Can I use epc:start-epc-debug or is there no way to do that?

(defun epc:start-epc-debug (port)
  "[internal] Return an epc:manager instance which is set up partially."
  (epc:init-epc-layer
   (make-epc:manager :server-process nil
                     :commands (cons "[DEBUG]" nil)
                     :port port
                     :connection (epc:connect "localhost" port))))

Thank you for your help.

Is EPC + concurrent only on 24.4+?

Currently running Emacs 24.3.1, trying to install jedi => epc => concurrent => deferred.

EPC (20140609.2234 in MELPA) lists concurrent as a direct dependency.
Concurrent (0.3.1 => 20161228.1930) lists 'emacs-24.3' and deferred (0.5.0) as dependencies.
Deferred (0.5.0 => 20170901.630) lists 'emacs-24.4' as a dependency, which is not satisfied by. Does this imply that the minimum version of emacs epc is usable with is 24.4 implicitly? It seems strange for concurrent to be compatible with different versions than it's own dependency.

README の気になった点など

README 充実しましたね! README あると使ってて安心します。

いくつか気になった点がありました。


The EPC stack can translate following types:

  • nil
  • symbol
  • number
  • string
  • list
  • alist
  • complex object of list and alist.

とありますが、 ここで alist を特別扱いする必要はありますか? リテラルとして listcons (. の扱い) がパース出来れば、 alist を特別扱いする必要は無い気がします。 alist を hash table とかに自動的に変換する必要があれば別ですが、そもそも受け取ったリストが alist かどうかを確実に判断することは不可能なのでそれは無理だと思います。


EPC が双方向にメソッド呼び出しが可能だという特徴が抜けている気がします。 例えば、 API Overview の図だと、クライアントがサーバーを呼び出す使い方しか見せてません。 あまり RPC 詳しく無い人が見ると、なんで epcs: 以下じゃなくて epc: 以下に epc:define-method があるんだ、って思うかもしれません (というか私がそうでした)。


あと細かい所だと API Overview の図で epc:call-deferred のリプライを示す矢印が無いのが気になりました...。

Suspicious arguments for epc:process-available-input

epc:process-available-input の末尾の epc:run-when-idle ですが、引数に connection も必要じゃないでしょうか?

diff --git a/epc.el b/epc.el
index 1fbee87..b15d9d6 100644
--- a/epc.el
+++ b/epc.el
@@ -165,7 +165,7 @@ return epc:connection object."
 (defun epc:process-available-input (connection process)
   "Process all complete messages that have arrived from Lisp."
   (with-current-buffer (process-buffer process)
     (while (epc:net-have-input-p)
       (let ((event (epc:net-read-or-lose process))
             (ok nil))
         (epc:log "<< RECV [%S]" event)
         (unwind-protect
             (condition-case err
                 (progn
                   (apply 'cc:signal-send 
                          (cons (epc:connection-channel connection) event))
                   (setq ok t))
               ('error (epc:log "MsgError: %S / <= %S" err event)))
           (unless ok
-            (epc:run-when-idle 'epc:process-available-input process)))))))
+            (epc:run-when-idle 'epc:process-available-input connection process)))))))

 (defun epc:net-have-input-p ()
   "Return true if a complete message is available."

Call メソッド の仕様について

Python の EPC binding (https://github.com/tkf/python-epc) を書いているんですが、 call メソッド の仕様について質問があります。

epc:call-deferred の call signature は

(epc:call-deferred MNGR METHOD-NAME ARGS)

となっていますが、 ARGS にはリスト以外のオブジェクト、例えば int を入れてもサーバーに送れるようです。サーバー側で method を呼ぶ際に

  1. method(ARGS)
  2. method(ARGS[0], ARGS[1], ..., ARGS[-1])

の二通りの呼び方があると思うのですが、 ARGS がリスト以外も受け付ける必要がある場合、 2. の呼び方は出来ません。ただ、 1. の呼び方だと method 内部で ARGS を分解する必要があって、面倒です。 1. と 2. のどちらの呼び方を採用すべきですか?

Specify the type of UID in readme.md.

I could not know the the type of the session ID.

In readme.md, UID is said to be following:

UID : The session ID, which is an unique ID generated by the caller side.

I thought, UID should be String but it actually is Integer.

Could you specify the type in readme.md?
(or, Can I use String instead of Integer?)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.