From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id mKQfGhJqM2EARgAAgWs5BA (envelope-from ) for ; Sat, 04 Sep 2021 14:44:02 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id mKdVFRJqM2HlVgAAB5/wlQ (envelope-from ) for ; Sat, 04 Sep 2021 12:44:02 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 8263A14B73 for ; Sat, 4 Sep 2021 14:44:01 +0200 (CEST) Received: from localhost ([::1]:45976 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mMV1b-0000Lz-CC for larch@yhetil.org; Sat, 04 Sep 2021 08:43:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47048) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mMNl5-0000R0-MZ for emacs-orgmode@gnu.org; Sat, 04 Sep 2021 00:58:27 -0400 Received: from smtp152.vfemail.net ([146.59.185.152]:46179) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1mMNl2-0001t5-SA for emacs-orgmode@gnu.org; Sat, 04 Sep 2021 00:58:27 -0400 Received: (qmail 26384 invoked from network); 4 Sep 2021 04:58:17 +0000 Received: from localhost (HELO freequeue.vfemail.net) () by smtpout.vfemail.net with ESMTPS (DHE-RSA-AES256-SHA encrypted); 4 Sep 2021 04:58:17 +0000 Received: (qmail 8024 invoked from network); 4 Sep 2021 04:57:51 -0000 Received: from localhost (HELO nl101-2.vfemail.net) (bmE=@127.0.0.1) by freequeue.vfemail.net with (DHE-RSA-AES256-SHA encrypted) SMTP; 4 Sep 2021 04:57:51 -0000 Received: (qmail 7765 invoked from network); 4 Sep 2021 04:57:34 -0000 Received: by simscan 1.4.0 ppid: 7759, pid: 7763, t: 0.0143s scanners:none Received: from unknown (HELO localhost) (ZWRnYXJAb3Blbm1haWwuY2M=@192.168.1.192) by nl101.vfemail.net with ESMTPA; 4 Sep 2021 04:57:34 -0000 Date: Sat, 04 Sep 2021 04:58:00 +0000 Message-ID: <20210904045800.Horde.q8-nbz1dNR2O47UBMvOa7-A@www.vfemail.net> From: edgar@openmail.cc To: emacs-orgmode@gnu.org Subject: How to use Org with Python as an IDE? User-Agent: Horde Application Framework 5 X-VFEmail-Originating-IP: 2405:8100:8000:5ca1::4cb:7098 X-VFEmail-AntiSpam: Notify admin@vfemail.net of any spam, and include VFEmail headers Content-Type: text/plain; charset=utf-8; format=flowed; DelSp=Yes MIME-Version: 1.0 Content-Disposition: inline Received-SPF: softfail client-ip=146.59.185.152; envelope-from=edgar@openmail.cc; helo=smtp152.vfemail.net X-Spam_score_int: 3 X-Spam_score: 0.3 X-Spam_bar: / X-Spam_report: (0.3 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_SOFTFAIL=0.665, SPOOFED_FREEMAIL=1.518, UNPARSEABLE_RELAY=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 04 Sep 2021 08:43:14 -0400 X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1630759441; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=wNSPm0SJPzEH+f5amjVTfDwhJZZpgpdwvPv+7ql/3ZQ=; b=pdW61SPfTbIPGHSPpLGCNvrCIeXffIrY9kbpEaHMvRcDUtEpA2dFWRqXcQfbCFIH+Q7ScQ 6X0ScH/jVhTXg7qRZVCWO1RRDWkfnlqRzF81gHNZd8joDMD/NKmL74q9YWw2mU/PsKF5G3 Uuwfo8ydPyVYZrfPS8d9bXLJYaq20huKTl6lgtdhevyIiUBN/gS34ypQ5xl+VtWt6OKabI iCZDoMeSp461NZfNHFQBD3vSfjq5UKjVib0FodgA3QB2A1L9TK99Gd6FYvCATBoD02Aa2o 1pLvHDUGK55j38eD1C7U4ml0NcOs9MfV4uU+OqNjh1++jXSiewWRMS/Q6+E6EA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1630759441; a=rsa-sha256; cv=none; b=EbDb0fWGxK4F+MKSSNyzlWZwsqXUFpgHk7fibyebsW6GiTxv/bcSf5CyDbLbnVPB0CX1/R 7Uadrha/oaQwDu2WjcNKII0Jp3Fuu7ju1xWdX4xSGF80EMK40SXwYm1uZYTNghSUyVbu90 6X4VNnPXvjZYsOOcrZ8PRFT5ruvdobNP5fYMuc9sMMssSzhz6JJ0mG/eqwstqVX1oERnGF MbAD6pyAgDMfX5vbtamTU/8LkH07477IEwO2n1s6xmgKcxeHRMpNVz5Y4aNgQcqgLsKifX YrV+udhRvmHzilFZ6QDrLri8w244K42HQC6dYed0LyM8dXBKrE4K5E+M5PSD6A== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: 0.58 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 8263A14B73 X-Spam-Score: 0.58 X-Migadu-Scanner: scn1.migadu.com X-TUID: xB5hG69oZcNi Hi! * Brief I want to use Emacs to program in Python and combine it with Org. I am unable to setup Gtags (my first option), Elpy nor Jedi. I would like to stay away from LSP, but I am willing to heed. What you see [[*What I have tried][below]] is to show that I really tried. You should really read this as an Emacs Org file Why do I write this to the Org community? Because I would like to have a solution which works with the best way of organising my life (Org and Org Babel). Thanks! * What I want I would like to - be able to have a way to navigate through code similar to CEDET/Semantic (some key strokes, and go to the definition of something, change into appropriate files, go back, etc.). - find symbols or tags - get contextual help about the signature of functions and the like - have code completion from the current project and system's libraries (it would be nice if I can refer to more than one project) P.S. https://web.libera.chat/ does not let me connect (Tor not accepted?) P.S.S. StackOverflow's CloudFlare did not let me register * What I have tried ** Gtags ** Elpy I think that the creator of Elpy got completely fed up and left the project (I could be wrong). The project is now a side-project of someone else. It used to work, except for some quirks in Org src buffers. #+begin_src elisp ;; https://realpython.com/emacs-the-best-python-editor/ ;; Install these first: (emacs) epc, deferred, ctable, jedi, ;; company, (python) sexpdata, epc, jedi, black (use-package elpy ;; :ensure elpy :defer t ;:defer 1 :init (advice-add 'python-mode :before 'elpy-enable) :config (setq elpy-rpc-python-command "python3" ;; For interactive shell python-shell-interpreter "python3" ;; Don't use the root of the project, open the shell ;; in current directory elpy-shell-use-project-root nil) (defun custom-python-mode-hook () (setq python-indent-offset 4) (setq tab-width 4) (setq indent-tabs-mode nil)) (add-hook 'python-mode-hook 'custom-python-mode-hook) (define-key elpy-mode-map (kbd "C-c C-k") 'org-edit-src-abort) (define-key elpy-mode-map (kbd "C-c K") 'elpy-shell-kill-all)) #+end_src I don't know if I am supposed to be running a server ouuside Emacs (Jedi?), but I don't get any completion. Didn't even try to get documentation on-request. I don't have a virtual environment. ** Jedi alone I get an error about some =libpython3.7m= #+begin_src elisp (require 'jedi) (jedi:install-server) #+end_src #+RESULTS: #+begin_example #s(deferred (closure ((callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (d . #s(deferred (closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #8) (d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (closure ((normal closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #10) (d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #8) (d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (e) (condition-case nil (progn (deferred:call-lambda callback e)) (error nil)) (deferred:resignal e)) deferred:default-cancel #0 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (closure ((normal closure ((callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (d . #s(deferred (closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #10) (d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #6 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (closure ((normal closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #12) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #12 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #12) (d . #12) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #12 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #6 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #10) (d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #6 nil nil)) cl-struct-deferred-tags t) (e) (condition-case nil (progn (deferred:call-lambda callback e)) (error nil)) (deferred:resignal e)) deferred:default-cancel #0 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (callback closure ((it . #0) t) (_) (progn (set-default 'jedi:server-command (jedi:-env-server-command)))) (d . #s(deferred (closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #8) (d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (closure ((normal closure ((callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #10) (d . #10) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #10 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (x) (condition-case nil (progn (deferred:call-lambda callback x)) (error nil)) x) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (callback . #[128 "\302\300\303\301\"\"\207" [(lambda (msg output) (message "%s...Done" msg) (if python-environment--verbose (progn (message output)))) ("Running: pip install --upgrade ~/.emacs.d/elpa/jedi-core-0.2.8/") apply append] 6 " (fn &rest ARGS2)"]) (d . #s(deferred (closure ((d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (buf) (prog1 (save-current-buffer (set-buffer buf) (buffer-string)) (kill-buffer buf))) deferred:default-errorback (closure ((v . #8) (d . #8) (pd . #s(deferred deferred:default-callback deferred:default-errorback deferred:default-cancel #8 nil nil)) (args "install" "--upgrade" "~/.emacs.d/elpa/jedi-core-0.2.8/") (command . "~/.emacs.d/.python-environments/default/bin/pip") (f . start-process) cl-struct-deferred-tags t) (_x) (deferred:default-cancel d) (deferred:default-cancel pd)) #4 nil nil)) cl-struct-deferred-tags t) (e) (condition-case nil (progn (deferred:call-lambda callback e)) (error nil)) (deferred:resignal e)) deferred:default-cancel #0 nil nil)) cl-struct-deferred-tags t) (e) (condition-case nil (progn (deferred:call-lambda callback e)) (error nil)) (deferred:resignal e)) deferred:default-cancel nil nil nil) #+end_example Plus this: #+begin_example deferred error : (error "Deferred process exited abnormally: command: /home/edgar/.emacs.d/.python-environments/default/bin/pip exit status: exit 127 event: exited abnormally with code 127 buffer contents: \"~/.emacs.d/.python-environments/default/bin/python: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory #+end_example ------------------------------------------------- This free account was provided by VFEmail.net - report spam to abuse@vfemail.net ONLY AT VFEmail! - Use our Metadata Mitigator to keep your email out of the NSA's hands! $24.95 ONETIME Lifetime accounts with Privacy Features! 15GB disk! No bandwidth quotas! Commercial and Bulk Mail Options!