emacs-ess / ESS

Emacs Speaks Statistics: ESS
https://ess.r-project.org/
GNU General Public License v3.0
620 stars 162 forks source link

ess-help doesn't work in ess-julia-mode #1151

Open jthaman opened 3 years ago

jthaman commented 3 years ago

When I run ess-help on a julia function, I get the gibberish

ess-help: Invalid function: (inferior-ess-primary-prompt . "\\w*> ")

Happens with my configuration, and with this minimal configuration

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
;; Comment/uncomment this line to enable MELPA Stable if desired.  See `package-archive-priorities`
;; and `package-pinned-packages`. Most users will not need or want to do this.
;;(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t)
(package-initialize)

(package-refresh-contents)

(package-install 'ess)
(package-install 'julia-mode)

(require 'ess)
(require 'ess-julia)

The backtrace is

Debugger entered--Lisp error: (invalid-function (inferior-ess-primary-prompt . "\\w*> "))
  ((inferior-ess-primary-prompt . "\\w*> ") (inferior-ess-secondary-prompt) (inferior-ess-prompt . "\\w*> ") (ess-local-customize-alist . ess-julia-customize-alist) (inferior-ess-program . inferior-julia-program) (ess-load-command . "include(expanduser(\"%s\"))\n") (ess-funargs-command . "ESS.fun_args(\"%s\")\n") (ess-dump-error-re . "in \\w* at \\(.*\\):[0-9]+") (ess-error-regexp . "\\(^\\s-*at\\s-*\\(?3:.*\\):\\(?2:[0-9]+\\)\\)") (ess-error-regexp-alist . ess-julia-error-regexp-alist) (ess-mode-completion-syntax-table . ess-julia-completion-syntax-table) (inferior-ess-help-command . "ESS.help(\"%s\")\n") (ess-language . "julia") (ess-dialect . "julia") (ess-suffix . "jl") (ess-dump-filename-template replace-regexp-in-string "S$" ess-suffix ess-dump-filename-template-proto) (ess-mode-editing-alist) (ess-change-sp-regexp) (ess-help-sec-regex . ess-help-r-sec-regex) (ess-help-sec-keys-alist . ess-help-r-sec-keys-alist) (ess-function-pattern . ess-r-function-pattern) (ess-object-name-db-file . "ess-jl-namedb.el") (ess-smart-operators . ess-r-smart-operators) (inferior-ess-exit-command . "exit()\n") (inferior-ess-language-start) (ess-STERM . "iESS") (ess-editor . ess-r-editor) (ess-pager . ess-r-pager) (ess-getwd-command . "pwd()\n") (ess-setwd-command . "cd(expanduser(\"%s\"))\n"))
  ess-display-help-on-object("rm")
  funcall-interactively(ess-display-help-on-object "rm")
  command-execute(ess-display-help-on-object)

I'm using Emacs 28 on linux.

rdiaz02 commented 3 years ago

I can reproduce this problem (see mentioned issue). @jthaman : You might want to use julia-repl (https://github.com/tpapp/julia-repl) or julia-vterm (https://github.com/shg/julia-vterm.el) instead, that do not show this issue.

jthaman commented 3 years ago

Thanks, I've reverted to using julia-mode and julia-repl for the little bit of Julia exploration I've been doing.