update packages
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
;;; ess-custom.el --- Customize variables for ESS -*- lexical-binding: t; -*-
|
||||
|
||||
;; Copyright (C) 1997-2020 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997-2025 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Rodney Sparapani
|
||||
;; Maintainer: ESS-help <ess-help@r-project.org>
|
||||
@@ -141,7 +141,7 @@
|
||||
"Directory containing ess-site.el(c) and other ESS Lisp files."
|
||||
:group 'ess
|
||||
:type 'directory
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defcustom ess-etc-directory
|
||||
;; Try to detect the `etc' folder only if not already set up by distribution
|
||||
@@ -156,7 +156,7 @@ The ESS etc directory stores various auxiliary files that are useful
|
||||
for ESS, such as icons."
|
||||
:group 'ess
|
||||
:type 'directory
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
;; Depending on how ESS is loaded the `load-path' might not contain
|
||||
;; the `lisp' directory. For this reason we need to add it before we
|
||||
@@ -192,7 +192,7 @@ See `ess-auto-width'. Be warned that ESS can set the width a
|
||||
lot."
|
||||
:group 'ess
|
||||
:type 'boolean
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defcustom ess-auto-width nil
|
||||
"When non-nil, set the width option when the window configuration changes.
|
||||
@@ -206,7 +206,7 @@ window's width minus that number. Anything else is treated as
|
||||
(const :tag "Frame width" :value frame)
|
||||
(const :tag "Window width" :value window)
|
||||
(integer :tag "Integer value"))
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defcustom ess-handy-commands '(("change-directory" . ess-change-directory)
|
||||
("install.packages" . ess-install-library)
|
||||
@@ -329,7 +329,7 @@ process. If a symbol, the symbol's value should be a directory.
|
||||
For example, the following setting would always start the process
|
||||
in the directory of the current file:
|
||||
|
||||
(setq ess-startup-directory 'default-directory)
|
||||
(setq ess-startup-directory ''default-directory)
|
||||
|
||||
If `ess-startup-directory' is nil (the default) and
|
||||
`ess-startup-directory-function' is non-nil, the value returned
|
||||
@@ -380,7 +380,7 @@ processes buffers are always numbered (e.g. R:2:foo."
|
||||
'ess-use-inferior-program-name-in-buffer-name
|
||||
'ess-use-inferior-program-in-buffer-name "ESS 18.10")
|
||||
(defcustom ess-use-inferior-program-in-buffer-name nil
|
||||
"For R, use e.g., 'R-2.1.0' or 'R-devel' (the program name) for buffer name.
|
||||
"For R, use e.g., `R-2.1.0' or `R-devel' (the program name) for buffer name.
|
||||
Avoids the plain dialect name."
|
||||
:group 'ess
|
||||
:type 'boolean)
|
||||
@@ -478,7 +478,7 @@ If \\='process, only check if the buffer has an inferior process."
|
||||
:type '(choice (const :tag "Always" t)
|
||||
(const :tag "With running inferior process" process)
|
||||
(const :tag "Never" nil))
|
||||
:package-version '(ess . "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defcustom ess-use-auto-complete t
|
||||
"If non-nil, activate auto-complete support.
|
||||
@@ -562,7 +562,7 @@ contain spaces on either side."
|
||||
;; them.
|
||||
:type '(repeat string)
|
||||
:group 'ess
|
||||
:package-version '(ess "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
(defvar ess-S-assign)
|
||||
(make-obsolete-variable 'ess-S-assign 'ess-assign-list "ESS 18.10")
|
||||
|
||||
@@ -584,7 +584,7 @@ This gets appended to `prettify-symbols-alist', so set it to nil
|
||||
if you want to disable R specific prettification."
|
||||
:group 'ess-R
|
||||
:type '(alist :key-type string :value-type symbol)
|
||||
:package-version '(ess . "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
;;*;; Variables concerning editing behavior
|
||||
|
||||
@@ -751,7 +751,7 @@ is non-nil. Affects `ess-save-file'."
|
||||
(const :tag "Use compilation-ask-about-save and auto-save-visited-mode."
|
||||
:value auto)
|
||||
(const :tag "Save without asking." :value t))
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
;;*;; Variables controlling editing
|
||||
|
||||
@@ -1317,7 +1317,7 @@ the same KEY before adding the new one."
|
||||
|
||||
(defcustom ess-own-style-list (cdr (assoc 'RRR ess-style-alist))
|
||||
"Indentation variables for your own style.
|
||||
Set `ess-style' to 'OWN to use these values. To change
|
||||
Set `ess-style' to \='OWN to use these values. To change
|
||||
these values, use the customize interface. See the documentation
|
||||
of each variable for its meaning."
|
||||
:group 'ess-edit
|
||||
@@ -1371,7 +1371,7 @@ This always dumps to a sub-directory (\".Src\") of the current ess
|
||||
working directory (i.e. first elt of search list)."
|
||||
:group 'ess-edit
|
||||
:type 'directory
|
||||
:package-version '(ess . "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defvar ess-dump-filename-template nil
|
||||
"Internal. Initialized by dialects.")
|
||||
@@ -1404,7 +1404,7 @@ Currently this should not be used to interact with the inferior
|
||||
process because this hook runs too early, before the inferior
|
||||
mode had a chance to properly start up the process. To interact
|
||||
with the process, you must use a mode-specific hook like
|
||||
'ess-r-post-run-hook'."
|
||||
`ess-r-post-run-hook'."
|
||||
:group 'ess-hooks
|
||||
:type 'hook)
|
||||
|
||||
@@ -1427,19 +1427,21 @@ Used to decide highlighting and tag completion."
|
||||
:type '(repeat string))
|
||||
|
||||
(defcustom ess-roxy-tags-param '("author" "aliases" "concept" "details"
|
||||
"examples" "format" "keywords"
|
||||
"example" "examples" "examplesIf"
|
||||
"format" "keywords"
|
||||
"method" "exportMethod"
|
||||
"name" "note" "param"
|
||||
"include" "references" "return"
|
||||
"include" "references" "return" "returns"
|
||||
"seealso" "source" "docType"
|
||||
"title" "TODO" "usage" "import"
|
||||
"exportClass" "exportPattern" "S3method"
|
||||
"exportClass" "exportPattern"
|
||||
"exportS3Method" "S3method"
|
||||
"inherit" "inheritParams" "inheritSection"
|
||||
"importFrom" "importClassesFrom"
|
||||
"importMethodsFrom" "useDynLib"
|
||||
"rawNamespace"
|
||||
"rdname" "section" "slot" "description"
|
||||
"md" "eval" "family")
|
||||
"md" "eval" "evalNamespace" "family")
|
||||
"The tags used in roxygen fields that require a parameter.
|
||||
Used to decide highlighting and tag completion."
|
||||
:group 'ess-roxy
|
||||
@@ -1531,7 +1533,7 @@ there is no project root in the current directory."
|
||||
(const :tag "*proc:project-root* or *proc*" ess-gen-proc-buffer-name:project-or-simple)
|
||||
(const :tag "*proc:project-root* or *proc:dir*" ess-gen-proc-buffer-name:project-or-directory)
|
||||
function)
|
||||
:package-version '(ess . "19.04"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
|
||||
(defcustom ess-kermit-command "gkermit -T"
|
||||
@@ -1858,7 +1860,7 @@ This variable also affect the evaluation of input code in
|
||||
iESS. The effect is similar to the above. If t then ess waits for
|
||||
the process output, otherwise not."
|
||||
:group 'ess-proc
|
||||
:package-version '(ess . "19.04")
|
||||
:package-version '(ess . "25.01.1")
|
||||
:type '(choice (const t) (const nowait) (const nil)))
|
||||
|
||||
(defcustom ess-eval-deactivate-mark (fboundp 'deactivate-mark); was nil till 2010-03-22
|
||||
@@ -2052,6 +2054,15 @@ See also function `ess-create-object-name-db'.")
|
||||
"recover" "browser")
|
||||
"Reserved words or special functions in the R language.")
|
||||
|
||||
(defvar ess-r--keystrings
|
||||
'("\\" "\?")
|
||||
"Reserved non-word strings or special functions whose names
|
||||
include special characters in the R language.
|
||||
|
||||
Similar font-locking usage as `ess-R-keywords', but dedicated to
|
||||
strings that should not be treated as `words’ by `regexp-opt' in
|
||||
`ess-r--find-fl-keyword'.")
|
||||
|
||||
(defvar ess-S-keywords
|
||||
(append ess-R-keywords '("terminate")))
|
||||
|
||||
@@ -2088,7 +2099,8 @@ See also function `ess-create-object-name-db'.")
|
||||
(defvar ess-R-function-name-regexp
|
||||
(concat "\\(" "\\sw+" "\\)"
|
||||
"[ \t]*" "\\(<-\\)"
|
||||
"[ \t\n]*" "function\\b"))
|
||||
"[ \t\n]*" "\\(function\\b\\|\\(\\\\[ \t\n(]+\\)\\)"))
|
||||
;; "[ \t\n(]+" after "\\\\" since cannot use "\\b" to bound a non-word
|
||||
|
||||
(defvar ess-S-function-name-regexp
|
||||
ess-R-function-name-regexp)
|
||||
@@ -2317,7 +2329,7 @@ This defaults to `default-frame-alist' and is used only when
|
||||
the variable `ess-help-own-frame' is non-nil."
|
||||
:group 'ess-help
|
||||
:type 'alist
|
||||
:package-version '(ess . "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
; Faces
|
||||
;;;=====================================================
|
||||
@@ -2463,7 +2475,7 @@ Created for each process."
|
||||
See also `ess-verbose'."
|
||||
:group 'ess-proc
|
||||
:type 'boolean
|
||||
:package-version '(ess . "18.10"))
|
||||
:package-version '(ess . "25.01.1"))
|
||||
|
||||
(defcustom ess-verbose nil
|
||||
"Non-nil means write more information to `ess-dribble-buffer' than usual."
|
||||
|
||||
@@ -605,6 +605,11 @@ process-less buffer because it was created with
|
||||
(nconc
|
||||
(list "STATATERM=emacs"
|
||||
(format "PAGER=%s" inferior-ess-pager))
|
||||
;; This lets R code know whether Emacs was running with a
|
||||
;; light or dark background at startup time
|
||||
(let ((bg-mode (frame-parameter nil 'background-mode)))
|
||||
(when (memq bg-mode '(light dark))
|
||||
(list (format "ESS_BACKGROUND_MODE=%s" (symbol-name bg-mode)))))
|
||||
process-environment))
|
||||
(tramp-remote-process-environment
|
||||
(nconc ;; it contains a pager already, so append
|
||||
@@ -820,7 +825,7 @@ to `ess-completing-read'."
|
||||
(delete-dups (list "R" "S+" (or (bound-and-true-p S+-dialect-name) "S+")
|
||||
"stata" (or (bound-and-true-p STA-dialect-name) "stata")
|
||||
"julia" "SAS")))))
|
||||
(pname-list (delq nil ;; keep only those matching dialect
|
||||
(pname-list (delq nil ;; keep only those matching dialect and `ess-gen-proc-buffer-name-function'
|
||||
(append
|
||||
(mapcar (lambda (lproc)
|
||||
(and (equal ess-dialect
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
;; Don't require `julia-mode' to compile this file.
|
||||
(when t (require 'julia-mode))
|
||||
(declare-function julia-mode "julia-mode" ())
|
||||
(declare-function julia-latexsub "julia-mode" ())
|
||||
(declare-function julia-mode-latexsub-completion-at-point-before "julia-mode" ())
|
||||
(declare-function julia-mode-latexsub-completion-at-point-around "julia-mode" ())
|
||||
(defvar julia-mode-syntax-table)
|
||||
|
||||
(defvar ac-prefix)
|
||||
@@ -117,12 +118,6 @@ See `comint-input-sender'."
|
||||
|
||||
|
||||
;;; COMPLETION
|
||||
(defun ess-julia-latexsub-completion ()
|
||||
"Complete latex input in format required by `completion-at-point-functions'."
|
||||
(if (julia-latexsub) ; julia-latexsub returns nil if it performed a completion, the point otherwise
|
||||
nil
|
||||
(lambda () t) ;; bypass other completion methods
|
||||
))
|
||||
|
||||
(defun ess-julia-object-completion ()
|
||||
"Return completions in format required by `completion-at-point-functions'."
|
||||
@@ -369,7 +364,8 @@ It makes underscores and dots word constituent chars.")
|
||||
(remove-hook 'completion-at-point-functions #'ess-filename-completion 'local) ;; should be first
|
||||
(add-hook 'completion-at-point-functions #'ess-julia-object-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'ess-filename-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'ess-julia-latexsub-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'julia-mode-latexsub-completion-at-point-before nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'julia-mode-latexsub-completion-at-point-around nil 'local)
|
||||
(if (fboundp 'ess-add-toolbar) (ess-add-toolbar)))
|
||||
|
||||
;; Inferior mode
|
||||
@@ -393,7 +389,8 @@ It makes underscores and dots word constituent chars.")
|
||||
(remove-hook 'completion-at-point-functions #'ess-filename-completion 'local) ;; should be first
|
||||
(add-hook 'completion-at-point-functions #'ess-julia-object-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'ess-filename-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'ess-julia-latexsub-completion nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'julia-mode-latexsub-completion-at-point-before nil 'local)
|
||||
(add-hook 'completion-at-point-functions #'julia-mode-latexsub-completion-at-point-around nil 'local)
|
||||
(setq comint-input-sender #'ess-julia-input-sender))
|
||||
|
||||
(defvar ess-julia-mode-hook nil)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
(define-package "ess" "20230807.1422" "Emacs Speaks Statistics"
|
||||
(define-package "ess" "20250110.1437" "Emacs Speaks Statistics"
|
||||
'((emacs "25.1"))
|
||||
:commit "d8914196ceb2061d850cc899aed79342519972ff" :authors
|
||||
:commit "0eb240bcb6d0e933615f6cfaa9761b629ddbabdd" :authors
|
||||
'(("David Smith" . "dsmith@stats.adelaide.edu.au")
|
||||
("A.J. Rossini" . "blindglobe@gmail.com")
|
||||
("Richard M. Heiberger" . "rmh@temple.edu")
|
||||
|
||||
@@ -90,7 +90,7 @@ each element is passed as argument to `lintr::with_defaults'."
|
||||
} else {
|
||||
tryCatch(lintr::lint(commandArgs(TRUE), ...),
|
||||
error = function(e) {
|
||||
cat('@@warning: @@', e)
|
||||
cat('@@warning: @@', conditionMessage(e))
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -372,7 +372,7 @@ namespace.")
|
||||
(ess-goto-char string-end)
|
||||
(ess-looking-at "<-")
|
||||
(ess-goto-char (match-end 0))
|
||||
(ess-looking-at "function\\b" t)))
|
||||
(ess-looking-at "function\\b\\|\\\\" t)))
|
||||
font-lock-function-name-face)
|
||||
((save-excursion
|
||||
(and (cdr (assq 'ess-fl-keyword:fun-calls ess-R-font-lock-keywords))
|
||||
@@ -394,23 +394,44 @@ namespace.")
|
||||
font-lock-comment-face))
|
||||
|
||||
(defvar ess-r--non-fn-kwds
|
||||
'("in" "else" "break" "next" "repeat"))
|
||||
'("in" "else" "break" "next" "repeat")
|
||||
"Reserved words that should not be treated as names of special
|
||||
functions by `ess-r--find-fl-keyword'; such reserved words do
|
||||
not need to be followed by an open parenthesis to trigger
|
||||
font-locking.
|
||||
See also `ess-r--non-fn-kstrs'.")
|
||||
|
||||
(defvar ess-r--non-fn-kstrs
|
||||
'("\?")
|
||||
"Reserved non-word strings that should not be treated as names of
|
||||
special functions by `ess-r--find-fl-keyword'; such reserved
|
||||
strings do not need to be followed by an open parenthesis to
|
||||
trigger font-locking.
|
||||
See also `ess-r--non-fn-kwds'.")
|
||||
|
||||
(defvar-local ess-r--keyword-regexp nil)
|
||||
(defun ess-r--find-fl-keyword (limit)
|
||||
"Search for R keyword and set the match data.
|
||||
"Search for R keyword or keystring and set the match data.
|
||||
To be used as part of `font-lock-defaults' keywords."
|
||||
(unless ess-r--keyword-regexp
|
||||
(let (fn-kwds non-fn-kwds)
|
||||
(let (fn-kwds non-fn-kwds fn-kstrs non-fn-kstrs)
|
||||
(dolist (kw ess-R-keywords)
|
||||
(if (member kw ess-r--non-fn-kwds)
|
||||
(push kw non-fn-kwds)
|
||||
(push kw fn-kwds)))
|
||||
(dolist (kw ess-r--keystrings)
|
||||
(if (member kw ess-r--non-fn-kstrs)
|
||||
(push kw non-fn-kstrs)
|
||||
(push kw fn-kstrs)))
|
||||
(setq ess-r--keyword-regexp
|
||||
(concat "\\("
|
||||
(regexp-opt non-fn-kwds 'words)
|
||||
"\\|"
|
||||
(regexp-opt non-fn-kstrs t)
|
||||
"\\)\\|\\("
|
||||
(regexp-opt fn-kwds 'words)
|
||||
"\\|"
|
||||
(regexp-opt fn-kstrs t)
|
||||
"\\)"))))
|
||||
(let (out)
|
||||
(while (and (not out)
|
||||
|
||||
@@ -129,8 +129,9 @@ All Rd mode abbrevs start with a grave accent (`)."
|
||||
;; "Alpha" "Gamma" "alpha" "beta" "epsilon" "lambda" "mu" "pi" "sigma"
|
||||
;; "ge" "le" "left" "right"
|
||||
;;
|
||||
"RdOpts" "R" "S3method" "S4method" "Sexpr" "acronym"
|
||||
"bold" "cite" "code" "command" "cr" "dQuote" "deqn" "dfn" "dontrun"
|
||||
"RdOpts" "R" "S3method" "S4method" "Sexpr"
|
||||
"abbr" "acronym"
|
||||
"bold" "cite" "code" "command" "cr" "dQuote" "deqn" "dfn" "dontdiff" "dontrun"
|
||||
"dontshow" "donttest" "dots" "email" "emph" "enc" "env" "eqn" "figure" "file"
|
||||
"href"
|
||||
"ifelse" "if"
|
||||
|
||||
@@ -115,6 +115,7 @@ can then examine these objects, plot them, and so on."
|
||||
`[("Name" 18 t)
|
||||
("Class" 10 t)
|
||||
("Length" 10 ess-rdired--length-predicate)
|
||||
("Rows" 10 ess-rdired--rows-predicate)
|
||||
("Size" 10 ess-rdired--size-predicate)])
|
||||
(add-hook 'tabulated-list-revert-hook #'ess-rdired-refresh nil t)
|
||||
(when (and (not ess-rdired-auto-update-timer)
|
||||
@@ -173,7 +174,7 @@ details."
|
||||
|
||||
(defun ess-rdired--tabulated-list-entries (text)
|
||||
"Return a value suitable for `tabulated-list-entries' from TEXT."
|
||||
(let (name class length size)
|
||||
(let (name class length rows size)
|
||||
(if (not (string-match-p " +\"" text))
|
||||
;; Normal-world
|
||||
(setq text (split-string text " " t)
|
||||
@@ -185,13 +186,15 @@ details."
|
||||
text (split-string (substring text (1+ (match-end 0))) " " t)))
|
||||
(setq class (nth 0 text)
|
||||
length (nth 1 text)
|
||||
size (nth 2 text))
|
||||
rows (nth 2 text)
|
||||
size (nth 3 text))
|
||||
(list name
|
||||
`[(,name
|
||||
help-echo "mouse-2, RET: View this object"
|
||||
action ess-rdired-view)
|
||||
,class
|
||||
,length
|
||||
,rows
|
||||
,size])))
|
||||
|
||||
(defun ess-rdired-edit ()
|
||||
@@ -274,6 +277,13 @@ Return t if A's length is < than B's length."
|
||||
(lenB (aref (cadr B) 2)))
|
||||
(< (string-to-number lenA) (string-to-number lenB))))
|
||||
|
||||
(defun ess-rdired--rows-predicate (A B)
|
||||
"Enable sorting by rows in `ess-rdired' buffers.
|
||||
Return t if A's length is < than B's length."
|
||||
(let ((lenA (aref (cadr A) 2))
|
||||
(lenB (aref (cadr B) 2)))
|
||||
(< (string-to-number lenA) (string-to-number lenB))))
|
||||
|
||||
(defun ess-rdired--size-predicate (A B)
|
||||
"Enable sorting by size in `ess-rdired' buffers.
|
||||
Return t if A's size is < than B's size."
|
||||
|
||||
@@ -729,6 +729,8 @@ Use the current buffer if nil."
|
||||
"\\|NOTE: Estimated G matrix is not positive definite."
|
||||
"\\|NOTE: Compressing data set .* increased size by"
|
||||
"\\|NOTE: ERROR DETECTED IN ANNOTATE="
|
||||
"\\|NOTE: Import cancelled. Output dataset .* already exists."
|
||||
"\\|NOTE: Export cancelled. Output file"
|
||||
"\\|WARNING: Apparent symbolic reference .* not resolved."
|
||||
"\\|WARNING: Length of character variable has already been set."
|
||||
"\\|WARNING: Not all variables in the list "
|
||||
|
||||
@@ -389,50 +389,29 @@ number."
|
||||
;;; ;; SAS procedure names
|
||||
(cons (concat "\\<proc[ ]+"
|
||||
(regexp-opt '(
|
||||
;; SAS base and SAS/Graph
|
||||
"append"
|
||||
"calendar" "catalog" "chart" "cimport" "cport" "compare" "contents" "copy" "corr"
|
||||
"datasets" "dbcstab" "display"
|
||||
"explode" "export"
|
||||
"fcmp" "format" "forms" "freq" "fsbrowse" "fsedit" "fsletter" "fslist" "fsview"
|
||||
"ganno" "gchart" "gcontour" "gdevice" "geocode" "gfont" "gimport" "ginside"
|
||||
"gkeymap" "gmap" "goptions" "gplot" "gprint" "gproject" "greduce" "gremove"
|
||||
"greplay" "gslide" "gtestit" "g3d" "g3grid"
|
||||
"iml" "import" "insight"
|
||||
"mapimport" "means"
|
||||
"options"
|
||||
"plot" "pmenu" "print" "printto"
|
||||
"rank" "registry" "report"
|
||||
"setinit" "sgdesign" "sgmap"
|
||||
"sgpanel" "sgplot" "sgrender" "sgscatter" "sort" "sql" "standard" "summary"
|
||||
"tabulate" "template" "timeplot" "transpose" "trantab"
|
||||
"univariate"
|
||||
|
||||
;;SAS/Stat and SAS/ETS
|
||||
"aceclus" "anova" "arima" "autoreg"
|
||||
"bgenmod" "blifereg" "boxplot" "bphreg"
|
||||
"calis" "cancorr" "candisc" "catmod" "citibase" "cluster" "computab" "corresp" "countreg"
|
||||
"discrim" "distance"
|
||||
"entropy" "expand"
|
||||
"factor" "fastclus" "forecast"
|
||||
"gam" "gee" "genmod" "glimmix" "glm" "glmmod" "glmpower" "glmselect"
|
||||
"hpmixed"
|
||||
"inbreed"
|
||||
"kde" "krige2d"
|
||||
"lattice" "lifereg" "lifetest" "loess" "logistic"
|
||||
"mcmc" "mdc" "mds" "mi" "mianalyze" "mixed" "modeclus" "model" "mortgage" "multtest"
|
||||
"nested" "nlin" "nlmixed" "npar1way"
|
||||
"orthoreg"
|
||||
"panel" "pdlreg" "phreg" "plan" "plm" "pls" "power" "princomp" "prinqual" "probit"
|
||||
"qlim" "quantreg"
|
||||
"reg" "risk" "robustreg" "rsreg"
|
||||
"score" "seqdesign" "seqtest" "severity" "sim2d" "similarity" "simlin" "simnormal"
|
||||
"spectra" "statespace" "stdize" "stepdisc"
|
||||
"surveyfreq" "surveylogistic" "surveymeans" "surveyphreg" "surveyreg" "surveyselect" "syslin"
|
||||
"tcalis" "timeid" "timeseries" "tphreg" "tpspline" "transreg" "tree" "ttest"
|
||||
"ucm"
|
||||
"varclus" "varcomp" "variogram" "varmax"
|
||||
"x11" "x12"
|
||||
"access" "aceclus" "adaptivereg" "aggregation" "anom" "anova" "append" "appsrv" "arima" "assess" "astore" "authlib" "autoreg"
|
||||
"bchoice" "bglimm" "binning" "bnet" "bom" "boolrule" "boxplot" "build"
|
||||
"calendar" "calis" "callrfc" "cancorr" "candisc" "capability" "cardinality" "carima" "cas" "casutil" "catalog" "catmod" "causalgraph" "causalmed" "causaltrt" "ccdm" "ccopula" "cesm" "chart" "cimport" "clp" "cluster" "cntselect" "compare" "compile" "computab" "contents" "convert" "copula" "copy" "corr" "correlation" "corresp" "countreg" "cpanel" "cpm" "cport" "cqlim" "cspatialreg" "cusum" "cv2view"
|
||||
"datasets" "datasource" "datekeys" "db2ext" "db2util" "dbcstab" "dbf" "dbload" "delete" "dfil" "dif" "discrim" "display" "distance" "dmsrvadm" "dmsrvdatasvc" "dmsrvprocesssvc" "document" "download" "dqloclst" "dqmatch" "dqscheme" "ds2" "dstods2" "dtree"
|
||||
"ecm" "entropy" "esm" "expand" "explode" "export"
|
||||
"factex" "factmac" "factor" "fastclus" "fastknn" "fcmp" "fedsql" "fism" "fmm" "fmtc2itm" "fontreg" "forest" "format" "forms" "freq" "freqtab" "fsbrowse" "fsedit" "fsletter" "fslist" "fsview"
|
||||
"g3d" "g3grid" "ga" "gam" "gammod" "gampl" "gamselect" "ganno" "gantt" "gareabar" "gbarline" "gchart" "gcontour" "gdevice" "gee" "genmod" "genselect" "geocode" "gfont" "ginside" "gis" "gkpi" "glimmix" "glm" "glmmod" "glmpower" "glmselect" "gmap" "gmm" "goptions" "gplot" "gproject" "gradar" "gradboost" "greduce" "gremove" "greplay" "groovy" "gslide" "gtile" "gvarclus"
|
||||
"hadoop" "hdmd" "hmm" "hp4score" "hpbin" "hpbnet" "hpboolrule" "hpcandisc" "hpcdm" "hpclus" "hpcopula" "hpcorr" "hpcountreg" "hpdecide" "hpdmdb" "hpds2" "hpexport" "hpf" "hpfarimaspec" "hpfdiagnose" "hpfengine" "hpfesmspec" "hpfevents" "hpfexmspec" "hpfidmspec" "hpfmm" "hpforest" "hpfreconcile" "hpfrepository" "hpfselect" "hpftemprecon" "hpfucmspec" "hpgenselect" "hpimpute" "hplmixed" "hplogistic" "hpmixed" "hpneural" "hpnlmod" "hppanel" "hppls" "hpprincomp" "hpqlim" "hpquantselect" "hpreduce" "hpreg" "hprisk" "hpsample" "hpseverity" "hpsplit" "hpsummary" "hpsvm" "hptmine" "hptmscore" "http"
|
||||
"ica" "iclifetest" "icphreg" "iml" "import" "imstat" "imxfer" "inbreed" "infomaps" "iomoperate" "irt" "ishikawa" "items"
|
||||
"javainfo" "json"
|
||||
"kclus" "kde" "kpca" "krige2d"
|
||||
"lasr" "lattice" "lifereg" "lifetest" "lmixed" "loan" "localedata" "loess" "logistic" "logselect" "lua"
|
||||
"macontrol" "mapimport" "mbanalysis" "mbc" "mcmc" "mdc" "mddb" "mds" "mdsummary" "means" "metadata" "metalib" "metaoperate" "mi" "mianalyze" "migrate" "mixed" "modeclus" "model" "modelmatrix" "mtlearn" "multtest" "mvpdiagnose" "mvpmodel" "mvpmonitor" "mwpca"
|
||||
"nested" "netdraw" "network" "nlin" "nlmixed" "nlmod" "nmf" "nnet" "npar1way"
|
||||
"odslist" "odstable" "odstext" "olap" "olapcontents" "olapoperate" "operate" "optex" "optgraph" "options" "optload" "optlp" "optlso" "optmilp" "optmodel" "optnet" "optnetwork" "optqp" "optsave" "orthoreg"
|
||||
"panel" "pareto" "partition" "pca" "pdlreg" "pds" "pdscopy" "phreg" "phselect" "plan" "plm" "plot" "pls" "plsmod" "pm" "pmenu" "power" "presenv" "princomp" "prinqual" "print" "printto" "probit" "proto" "prtdef" "prtexp" "psmatch" "pwencode"
|
||||
"qdevice" "qlim" "qtrselect" "quantlife" "quantreg" "quantselect" "quest"
|
||||
"rank" "rareevents" "rdc" "rdpool" "rdsec" "recommend" "reg" "registry" "regselect" "release" "reliability" "report" "risk" "rmstreg" "robustreg" "rpca" "rsreg"
|
||||
"s3" "sandwich" "scaproc" "score" "scoreaccel" "semisuplearn" "seqdesign" "seqtest" "server" "severity" "sevselect" "sgdesign" "sgmap" "sgpanel" "sgpie" "sgplot" "sgrender" "sgscatter" "shewhart" "sim2d" "similarity" "simlin" "simnormal" "simsystem" "smcalib" "smproject" "smscore" "smselect" "smspec" "soap" "sort" "source" "sparseml" "spatialreg" "spc" "spdo" "spectra" "spp" "sql" "sqoop" "ssm" "standard" "statespace" "stdize" "stdrate" "stepdisc" "stp" "stream" "summary" "surveyfreq" "surveyimpute" "surveylogistic" "surveymeans" "surveyphreg" "surveyreg" "surveyselect" "svdd" "svmachine" "syslin"
|
||||
"tabulate" "tapecopy" "tapelabel" "textmine" "timedata" "timeid" "timeplot" "timeseries" "tmodel" "tmscore" "tpspline" "transpose" "transreg" "trantab" "tree" "treesplit" "tscsreg" "tsinfo" "tsmodel" "tsne" "tsreconcile" "ttest"
|
||||
"ucm" "univariate" "upload"
|
||||
"varclus" "varcomp" "varimpute" "variogram" "varmax" "varreduce" "vasmp"
|
||||
"x11" "x12" "x13" "xsl"
|
||||
) 'words)) font-lock-constant-face)
|
||||
|
||||
; (cons (concat
|
||||
@@ -489,6 +468,7 @@ number."
|
||||
(cons (concat ;"\\<"
|
||||
(regexp-opt
|
||||
'(
|
||||
;; SAS functions found in sashelp.vfunc where fncprod='X'
|
||||
"abs" "arcos" "arsin" "atan"
|
||||
"betainv" "byte"
|
||||
"call execute" "call label" "call module" "call modulei"
|
||||
|
||||
@@ -1522,6 +1522,11 @@ the output into *ess.dbg* buffer."
|
||||
(define-key map (kbd "M-C") #'ess-debug-command-continue)
|
||||
(define-key map [(control meta ?C)] #'ess-debug-command-continue-multi)
|
||||
(define-key map (kbd "M-N") #'ess-debug-command-next)
|
||||
(define-key map (kbd "M-S") #'ess-debug-command-step)
|
||||
(define-key map (kbd "M-W") #'ess-debug-command-where)
|
||||
(define-key map (kbd "M-F") #'ess-debug-command-finish)
|
||||
(define-key map (kbd "M-H") #'ess-debug-command-help)
|
||||
(define-key map (kbd "M-R") #'ess-debug-command-resume)
|
||||
(define-key map [(control meta ?N)] #'ess-debug-command-next-multi)
|
||||
(define-key map (kbd "M-Q") #'ess-debug-command-quit)
|
||||
(define-key map (kbd "M-U") #'ess-debug-command-up)
|
||||
@@ -1785,6 +1790,61 @@ Equivalent to `n' at the R prompt."
|
||||
(ess-send-string (ess-get-process) "0")
|
||||
(ess-send-string (ess-get-process) "n")))
|
||||
|
||||
(defun ess-debug-command-step ()
|
||||
"Step into in debug mode.
|
||||
Equivalent to `s' at the R prompt."
|
||||
(interactive)
|
||||
(ess-force-buffer-current)
|
||||
(unless (ess--dbg-is-active-p)
|
||||
(error "Debugger is not active"))
|
||||
(if (ess--dbg-is-recover-p)
|
||||
(ess-send-string (ess-get-process) "0")
|
||||
(ess-send-string (ess-get-process) "s")))
|
||||
|
||||
(defun ess-debug-command-finish ()
|
||||
"Step next in debug mode.
|
||||
Equivalent to `f' at the R prompt."
|
||||
(interactive)
|
||||
(ess-force-buffer-current)
|
||||
(unless (ess--dbg-is-active-p)
|
||||
(error "Debugger is not active"))
|
||||
(if (ess--dbg-is-recover-p)
|
||||
(progn (ess-send-string (ess-get-process) "0")
|
||||
(ess-send-string (ess-get-process) "f"))
|
||||
(ess-send-string (ess-get-process) "f")))
|
||||
|
||||
|
||||
(defun ess-debug-command-resume ()
|
||||
"Step next in debug mode.
|
||||
Equivalent to `f' at the R prompt."
|
||||
(interactive)
|
||||
(ess-force-buffer-current)
|
||||
(unless (ess--dbg-is-active-p)
|
||||
(error "Debugger is not active"))
|
||||
(if (ess--dbg-is-recover-p)
|
||||
(progn (ess-send-string (ess-get-process) "0")
|
||||
(ess-send-string (ess-get-process) "r"))
|
||||
(ess-send-string (ess-get-process) "r")))
|
||||
|
||||
(defun ess-debug-command-where ()
|
||||
"Step next in debug mode.
|
||||
Equivalent to `where' at the R prompt."
|
||||
(interactive)
|
||||
(ess-force-buffer-current)
|
||||
(unless (ess--dbg-is-active-p)
|
||||
(error "Debugger is not active"))
|
||||
(ess-send-string (ess-get-process) "where"))
|
||||
|
||||
|
||||
(defun ess-debug-command-help ()
|
||||
"Step next in debug mode.
|
||||
Equivalent to `where' at the R prompt."
|
||||
(interactive)
|
||||
(ess-force-buffer-current)
|
||||
(unless (ess--dbg-is-active-p)
|
||||
(error "Debugger is not active"))
|
||||
(ess-send-string (ess-get-process) "help"))
|
||||
|
||||
(defun ess-debug-command-next-multi (&optional N)
|
||||
"Ask for N and step (n) N times in debug mode."
|
||||
(interactive)
|
||||
|
||||
@@ -784,12 +784,18 @@ Copied almost verbatim from gnus-utils.el (but with test for mac added)."
|
||||
;; FIXME: allow '%foo%' but only when quoted; don't allow [_0-9] at beg.
|
||||
(space "\\(\\s-\\|\n\\)*") ; white space
|
||||
|
||||
(S7-method (concat "method(" Symb "," space
|
||||
"\\(list(\\(" Symb ",?" space "\\)+)\\|" Symb
|
||||
"\\))"))
|
||||
|
||||
(part-1 (concat
|
||||
"\\(" ;;--------outer Either-------
|
||||
"\\(\\(" ; EITHER
|
||||
Q xSymb Q ; any function name between quotes
|
||||
"\\)\\|\\("
|
||||
Symb ; (beginning of name) + ess-r-symbol-pattern
|
||||
"\\)\\|\\(" ; Add S7 method as a valid function name
|
||||
S7-method
|
||||
"\\)\\)")) ; END EITHER OR
|
||||
|
||||
(set-S4-exp
|
||||
@@ -807,7 +813,7 @@ Copied almost verbatim from gnus-utils.el (but with test for mac added)."
|
||||
|
||||
"\\(" space "\\s<.*\\s>\\)*" ; whitespace, comment
|
||||
;; FIXME: in principle we should skip 'definition *= *' here
|
||||
space "function\\s-*(" ; whitespace, function keyword, parenthesis
|
||||
space "\\(function\\|\\\\\\)\\s-*(" ; whitespace, function keyword, parenthesis
|
||||
)))
|
||||
`(,part-1 ,part-2))
|
||||
"Partial regex for matching functions.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; ess.el --- Emacs Speaks Statistics -*- lexical-binding: t; -*-
|
||||
|
||||
;; Copyright (C) 1997-2022 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997-2024 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: David Smith <dsmith@stats.adelaide.edu.au>
|
||||
;; A.J. Rossini <blindglobe@gmail.com>
|
||||
@@ -17,7 +17,7 @@
|
||||
;;
|
||||
;; Maintainer: ESS Core Team <ESS-core@r-project.org>
|
||||
;; Created: 7 Jan 1994
|
||||
;; Version: 18.10.3snapshot
|
||||
;; Version: 25.01.0
|
||||
;; URL: https://ess.r-project.org/
|
||||
;; Package-Requires: ((emacs "25.1"))
|
||||
;; ESSR-Version: 1.8
|
||||
|
||||
@@ -14,7 +14,7 @@ File: ess.info, Node: Top, Next: Introduction, Up: (dir)
|
||||
ESS: Emacs Speaks Statistics
|
||||
****************************
|
||||
|
||||
ESS version 18.10.3snapshot
|
||||
ESS version 25.01.0
|
||||
|
||||
by A.J. Rossini,
|
||||
R.M. Heiberger,
|
||||
@@ -249,7 +249,42 @@ File: ess.info, Node: New features, Next: Credits, Prev: Features, Up: Intro
|
||||
1.2 New features in ESS
|
||||
=======================
|
||||
|
||||
Changes and New Features in 19.04 (unreleased):
|
||||
Changes and New Features in 25.01.0:
|
||||
|
||||
* polymode: In our transition from literate libraries (such as noweb
|
||||
documented below with respect to 19.04), we now recommend the
|
||||
polymode packages as a more suitable replacement. Furthermore, we
|
||||
suggest the related polymodes including poly-noweb, poly-markdown
|
||||
and poly-R (installed in that order). The package polymode itself,
|
||||
as well as the polymodes packages, are all on MELPA rather than
|
||||
ELPA. Therefore, you need to add MELPA to the list of installation
|
||||
archives as follows. '(add-to-list 'package-archives
|
||||
'("melpa-stable" . "https://stable.melpa.org/packages/"))' for 'M-x
|
||||
package-install'
|
||||
|
||||
* ESS[R]: The shorthand notation for lambda functions and the
|
||||
question mark are now fontified as keywords. Contributed by Maxime
|
||||
Pettinger.
|
||||
|
||||
* ESS[SAS]: Developed new comprehensive lists of PROCs and functions
|
||||
for syntax highlighting. See 'etc/proc.sas' and 'etc/func.sas'.
|
||||
|
||||
Changes and New Features in 24.01.1:
|
||||
|
||||
* Revert a bug introduced with the 'ess-request-a-process' change
|
||||
|
||||
Changes and New Features in 24.01.0:
|
||||
|
||||
* fix docstring warnings in ess-custom
|
||||
|
||||
* :package-version is now set to "VERSION" in ess-custom. By make
|
||||
this is replaced with "24.01.0" (or similar).
|
||||
|
||||
* Better "collaboration" with org-mode. Now 'ess-request-a-process'
|
||||
obeys 'ess-gen-proc-buffer-name-function', thanks to Ihor
|
||||
Radchenko.
|
||||
|
||||
Changes and New Features in 19.04 (unreleased):
|
||||
|
||||
* ESS[R]: When a background command is interrupted with C-g, ESS now
|
||||
asks the user if they want to disable background evaluations
|
||||
@@ -511,7 +546,7 @@ documentation for more detail:
|
||||
* 'Makefile' fixes, notably for 'make install' and including full
|
||||
docs in the tarballs.
|
||||
|
||||
Bug Fixes in 18.10-1:
|
||||
Bug Fixes in 18.10.1:
|
||||
* New functions 'ess-eval-line-visibly-and-step' ('C-c C-n' and
|
||||
'ess-eval-region-or-line-visibly-and-step' ('C-RET') which behave
|
||||
as the old versions of 'ess-eval-line-and-step' and
|
||||
@@ -5021,109 +5056,109 @@ Concept Index
|
||||
|
||||
Tag Table:
|
||||
Node: Top268
|
||||
Node: Introduction2914
|
||||
Node: Features5668
|
||||
Node: Current Features6494
|
||||
Node: New features9945
|
||||
Node: Credits35243
|
||||
Node: Manual38860
|
||||
Node: Installation41526
|
||||
Node: Installing from a third-party repository42463
|
||||
Node: Installing from source43410
|
||||
Node: Activating and Loading ESS45002
|
||||
Node: Check Installation46076
|
||||
Node: Interactive ESS46296
|
||||
Node: Starting up47141
|
||||
Node: Multiple ESS processes47885
|
||||
Node: ESS processes on Remote Computers48966
|
||||
Node: Customizing startup53069
|
||||
Node: Controlling buffer display55959
|
||||
Node: Entering commands58580
|
||||
Node: Command-line editing59738
|
||||
Node: Transcript60971
|
||||
Node: Last command62740
|
||||
Node: Process buffer motion64166
|
||||
Node: Transcript resubmit65669
|
||||
Node: Saving transcripts67634
|
||||
Node: Command History69424
|
||||
Node: Saving History72833
|
||||
Node: History expansion73594
|
||||
Node: Hot keys76805
|
||||
Node: Statistical Process running in ESS?80875
|
||||
Node: Emacsclient82154
|
||||
Node: Other82946
|
||||
Node: Evaluating code83965
|
||||
Node: Transcript Mode87761
|
||||
Node: Resubmit88914
|
||||
Node: Clean89977
|
||||
Node: Editing objects90973
|
||||
Node: Edit buffer92091
|
||||
Node: Loading94137
|
||||
Node: Error Checking95164
|
||||
Node: Indenting96213
|
||||
Node: Styles99257
|
||||
Node: Other edit buffer commands101631
|
||||
Node: Source Files103287
|
||||
Node: Source Directories107891
|
||||
Node: Help111044
|
||||
Node: Completion115490
|
||||
Node: Object names115705
|
||||
Node: Function arguments118339
|
||||
Node: Minibuffer completion119282
|
||||
Node: Company119756
|
||||
Node: Icicles120143
|
||||
Node: Developing with ESS121463
|
||||
Node: ESS tracebug121909
|
||||
Node: Getting started with tracebug124916
|
||||
Node: Editing documentation127074
|
||||
Node: R documentation files127626
|
||||
Node: roxygen2131329
|
||||
Node: Namespaced Evaluation135740
|
||||
Node: Extras137738
|
||||
Node: ESS ElDoc138762
|
||||
Node: ESS Flymake140258
|
||||
Node: Handy commands141352
|
||||
Node: Highlighting142549
|
||||
Node: Parens143584
|
||||
Node: Graphics144060
|
||||
Node: printer144731
|
||||
Node: X11145487
|
||||
Node: winjava145826
|
||||
Node: Imenu146238
|
||||
Node: Toolbar147085
|
||||
Node: Xref147493
|
||||
Node: Rdired147821
|
||||
Node: Package listing148884
|
||||
Node: Org150268
|
||||
Node: Sweave and AUCTeX151222
|
||||
Node: ESS for R153774
|
||||
Node: ESS(R)--Editing files154074
|
||||
Node: iESS(R)--Inferior ESS processes154575
|
||||
Node: Philosophies for using ESS(R)157230
|
||||
Node: Example ESS usage158157
|
||||
Node: ESS for SAS159562
|
||||
Node: ESS(SAS)--Design philosophy160285
|
||||
Node: ESS(SAS)--Editing files161218
|
||||
Node: ESS(SAS)--TAB key163072
|
||||
Node: ESS(SAS)--Batch SAS processes164438
|
||||
Node: ESS(SAS)--Function keys for batch processing169466
|
||||
Node: iESS(SAS)--Interactive SAS processes178953
|
||||
Node: iESS(SAS)--Common problems182707
|
||||
Node: ESS(SAS)--Graphics184231
|
||||
Node: ESS(SAS)--Windows185014
|
||||
Node: ESS for BUGS185592
|
||||
Node: ESS for JAGS187348
|
||||
Node: Mailing lists/bug reports190700
|
||||
Node: Bugs190964
|
||||
Node: Reporting Bugs192588
|
||||
Node: Mailing Lists193481
|
||||
Node: Help with Emacs194208
|
||||
Node: Customization194740
|
||||
Node: Indices195514
|
||||
Node: Key index195689
|
||||
Node: Function and program index200821
|
||||
Node: Variable index210241
|
||||
Node: Concept index213802
|
||||
Node: Introduction2906
|
||||
Node: Features5660
|
||||
Node: Current Features6486
|
||||
Node: New features9937
|
||||
Node: Credits36694
|
||||
Node: Manual40311
|
||||
Node: Installation42977
|
||||
Node: Installing from a third-party repository43914
|
||||
Node: Installing from source44861
|
||||
Node: Activating and Loading ESS46453
|
||||
Node: Check Installation47527
|
||||
Node: Interactive ESS47747
|
||||
Node: Starting up48592
|
||||
Node: Multiple ESS processes49336
|
||||
Node: ESS processes on Remote Computers50417
|
||||
Node: Customizing startup54520
|
||||
Node: Controlling buffer display57410
|
||||
Node: Entering commands60031
|
||||
Node: Command-line editing61189
|
||||
Node: Transcript62422
|
||||
Node: Last command64191
|
||||
Node: Process buffer motion65617
|
||||
Node: Transcript resubmit67120
|
||||
Node: Saving transcripts69085
|
||||
Node: Command History70875
|
||||
Node: Saving History74284
|
||||
Node: History expansion75045
|
||||
Node: Hot keys78256
|
||||
Node: Statistical Process running in ESS?82326
|
||||
Node: Emacsclient83605
|
||||
Node: Other84397
|
||||
Node: Evaluating code85416
|
||||
Node: Transcript Mode89212
|
||||
Node: Resubmit90365
|
||||
Node: Clean91428
|
||||
Node: Editing objects92424
|
||||
Node: Edit buffer93542
|
||||
Node: Loading95588
|
||||
Node: Error Checking96615
|
||||
Node: Indenting97664
|
||||
Node: Styles100708
|
||||
Node: Other edit buffer commands103082
|
||||
Node: Source Files104738
|
||||
Node: Source Directories109342
|
||||
Node: Help112495
|
||||
Node: Completion116941
|
||||
Node: Object names117156
|
||||
Node: Function arguments119790
|
||||
Node: Minibuffer completion120733
|
||||
Node: Company121207
|
||||
Node: Icicles121594
|
||||
Node: Developing with ESS122914
|
||||
Node: ESS tracebug123360
|
||||
Node: Getting started with tracebug126367
|
||||
Node: Editing documentation128525
|
||||
Node: R documentation files129077
|
||||
Node: roxygen2132780
|
||||
Node: Namespaced Evaluation137191
|
||||
Node: Extras139189
|
||||
Node: ESS ElDoc140213
|
||||
Node: ESS Flymake141709
|
||||
Node: Handy commands142803
|
||||
Node: Highlighting144000
|
||||
Node: Parens145035
|
||||
Node: Graphics145511
|
||||
Node: printer146182
|
||||
Node: X11146938
|
||||
Node: winjava147277
|
||||
Node: Imenu147689
|
||||
Node: Toolbar148536
|
||||
Node: Xref148944
|
||||
Node: Rdired149272
|
||||
Node: Package listing150335
|
||||
Node: Org151719
|
||||
Node: Sweave and AUCTeX152673
|
||||
Node: ESS for R155225
|
||||
Node: ESS(R)--Editing files155525
|
||||
Node: iESS(R)--Inferior ESS processes156026
|
||||
Node: Philosophies for using ESS(R)158681
|
||||
Node: Example ESS usage159608
|
||||
Node: ESS for SAS161013
|
||||
Node: ESS(SAS)--Design philosophy161736
|
||||
Node: ESS(SAS)--Editing files162669
|
||||
Node: ESS(SAS)--TAB key164523
|
||||
Node: ESS(SAS)--Batch SAS processes165889
|
||||
Node: ESS(SAS)--Function keys for batch processing170917
|
||||
Node: iESS(SAS)--Interactive SAS processes180404
|
||||
Node: iESS(SAS)--Common problems184158
|
||||
Node: ESS(SAS)--Graphics185682
|
||||
Node: ESS(SAS)--Windows186465
|
||||
Node: ESS for BUGS187043
|
||||
Node: ESS for JAGS188799
|
||||
Node: Mailing lists/bug reports192151
|
||||
Node: Bugs192415
|
||||
Node: Reporting Bugs194039
|
||||
Node: Mailing Lists194932
|
||||
Node: Help with Emacs195659
|
||||
Node: Customization196191
|
||||
Node: Indices196965
|
||||
Node: Key index197140
|
||||
Node: Function and program index202272
|
||||
Node: Variable index211692
|
||||
Node: Concept index215253
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
.ess.helpLinks <- function(topic, package) {
|
||||
tryCatch(
|
||||
warning = function(...) NULL,
|
||||
error = function(...) NULL,
|
||||
error = function(...) NULL, # needs R >= 2.13.0
|
||||
{
|
||||
ast <- .ess.fetchParsedRd(topic, package)
|
||||
.ess.findLinks(ast)
|
||||
@@ -156,7 +156,7 @@
|
||||
}
|
||||
|
||||
.ess.strip.error <- function(msg, srcfile) {
|
||||
pattern <- paste0(srcfile, ":[0-9]+:[0-9]+: ")
|
||||
pattern <- paste(srcfile, ":[0-9]+:[0-9]+: ", sep = "")
|
||||
sub(pattern, "", msg)
|
||||
}
|
||||
|
||||
@@ -218,12 +218,12 @@ if(.ess.Rversion < "1.8")
|
||||
sink(getConnection(1))
|
||||
|
||||
on.exit({
|
||||
writeLines(paste0(sentinel, "-END"))
|
||||
writeLines(paste(sentinel, "-END", sep = ""))
|
||||
if (sinked)
|
||||
sink(NULL)
|
||||
})
|
||||
|
||||
writeLines(paste0(sentinel, "-START"))
|
||||
writeLines(paste(sentinel, "-START", sep = ""))
|
||||
|
||||
.ess.environment.state$env <- parent.frame()
|
||||
on.exit(.ess.environment.state$env <- NULL, add = TRUE)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
## load .base.R and all other files into ESSR environment; then attach ESSR
|
||||
.ess.ESSR.load <- function(dir) {
|
||||
|
||||
if (nzchar(Sys.getenv("ESSR_TEST_LOAD_ERROR")))
|
||||
if (Sys.getenv("ESSR_TEST_LOAD_ERROR") != "")
|
||||
stop('Loading failed with a nice message.')
|
||||
|
||||
Rver <- .ess.ESSR.get.rver()
|
||||
|
||||
@@ -158,7 +158,15 @@
|
||||
mode <- sapply(objs, data.class)
|
||||
length <- sapply(objs, length)
|
||||
size <- sapply(objs, function(obj) format(object.size(obj)))
|
||||
d <- data.frame(mode, length, size)
|
||||
rows <- sapply(objs,nrow)
|
||||
# sapply returns a list rather than a vector if there are NULLs eg nrow returns NULL for non-dataframes.
|
||||
# check if list, replace NULLS with NA and convert to vector
|
||||
if (is.list(rows)) {
|
||||
rows[sapply(rows,is.null)] <- NA
|
||||
rows <- unlist(rows)
|
||||
}
|
||||
|
||||
d <- data.frame(mode, length, rows, size)
|
||||
|
||||
var.names <- row.names(d)
|
||||
|
||||
|
||||
1058
lisp/ess/etc/all.txt
Normal file
1058
lisp/ess/etc/all.txt
Normal file
File diff suppressed because it is too large
Load Diff
80
lisp/ess/etc/func.sas
Normal file
80
lisp/ess/etc/func.sas
Normal file
@@ -0,0 +1,80 @@
|
||||
|
||||
|
||||
proc freq order=freq data=sashelp.vfunc;
|
||||
tables source fnctype fncprod;
|
||||
run;
|
||||
|
||||
/*
|
||||
title 'FNCPROD=B';
|
||||
proc print data=sashelp.vfunc;
|
||||
where fncname>' ' & FNCPROD='B';
|
||||
run;
|
||||
|
||||
title 'FNCPROD=X';
|
||||
proc print data=sashelp.vfunc;
|
||||
where fncname>' ' & FNCPROD='X';
|
||||
run;
|
||||
|
||||
title 'FNCPROD=T';
|
||||
proc print data=sashelp.vfunc;
|
||||
where fncname>' ' & FNCPROD='T';
|
||||
run;
|
||||
|
||||
title 'FNCPROD=I';
|
||||
proc print data=sashelp.vfunc;
|
||||
where fncname>' ' & FNCPROD='I';
|
||||
run;
|
||||
|
||||
endsas;
|
||||
*/
|
||||
|
||||
data vfunc;
|
||||
set sashelp.vfunc end=last;
|
||||
by fncname;
|
||||
where fncname>' ' & (fncprod='X' | source=fncprod='B');
|
||||
file "func.txt";
|
||||
|
||||
if _n_=1 then do;
|
||||
put ";; SAS functions found in sashelp.vfunc where fncprod='X' | source=fncprod='B'";
|
||||
end;
|
||||
|
||||
if last.fncname;
|
||||
|
||||
fncname=lowcase(fncname);
|
||||
|
||||
retain alpha 'abcdefghijklmnopqrstuvwxyz' prev 1;
|
||||
|
||||
format fncname $quote32.;
|
||||
|
||||
i=indexc(alpha, substr(fncname, 1, 1));
|
||||
|
||||
if i>prev then do;
|
||||
prev=i;
|
||||
put;
|
||||
end;
|
||||
|
||||
put fncname @;
|
||||
|
||||
if last then put;
|
||||
run;
|
||||
|
||||
data vfunc;
|
||||
set sashelp.vfunc end=last;
|
||||
by fncname;
|
||||
if last.fncname;
|
||||
|
||||
where fncname>' ' & (fncprod='X' | source=fncprod='B');
|
||||
file "check-func.sas";
|
||||
|
||||
fncname=trim(lowcase(fncname))||'();';
|
||||
|
||||
put fncname;
|
||||
run;
|
||||
|
||||
proc contents varnum;
|
||||
run;
|
||||
|
||||
proc print;
|
||||
var fncname;
|
||||
format fncname $quote32.;
|
||||
run;
|
||||
80
lisp/ess/etc/proc.sas
Normal file
80
lisp/ess/etc/proc.sas
Normal file
@@ -0,0 +1,80 @@
|
||||
|
||||
/*
|
||||
all.txt scraped from
|
||||
<https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/allprodsproc/procedures.htm>;
|
||||
*/
|
||||
|
||||
data proc;
|
||||
length name $ 20;
|
||||
infile 'all.txt';
|
||||
|
||||
input name;
|
||||
|
||||
if length(name)>1 & name^='SAS';
|
||||
|
||||
if verify(name, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ')=0;
|
||||
|
||||
name=lowcase(name);
|
||||
run;
|
||||
|
||||
proc sort nodupkey data=proc;
|
||||
by name;
|
||||
run;
|
||||
|
||||
data proc;
|
||||
set proc;
|
||||
by name;
|
||||
*these PROCs are not present on my system: YMMV;
|
||||
*if it starts with HP, then it requires the high-performance products;
|
||||
*where name not in:(
|
||||
'aggregation', 'appsrv',
|
||||
'compile',
|
||||
'db2ext', 'db2util', 'dmsrvadm', 'dmsrvdatasvc', 'dmsrvprocesssvc',
|
||||
'dqloclst', 'dqmatch', 'dqscheme',
|
||||
'gis',
|
||||
'hp',
|
||||
'imstat', 'imxfer', 'items',
|
||||
'lasr',
|
||||
'mddb',
|
||||
'optgraph',
|
||||
'pds', 'pdscopy',
|
||||
'quest',
|
||||
'rdc', 'rdpool', 'rdsec', 'recommend', 'release', 'risk',
|
||||
'source',
|
||||
'tapecopy', 'tapelabel',
|
||||
'vasmp'
|
||||
);
|
||||
run;
|
||||
|
||||
proc print;
|
||||
run;
|
||||
|
||||
data proc;
|
||||
set proc end=last;
|
||||
|
||||
file "proc.txt";
|
||||
|
||||
retain alpha 'abcdefghijklmnopqrstuvwxyz' prev 1;
|
||||
|
||||
format name $quote32.;
|
||||
|
||||
i=indexc(alpha, substr(name, 1, 1));
|
||||
|
||||
if i>prev then do;
|
||||
prev=i;
|
||||
put;
|
||||
end;
|
||||
|
||||
put name @;
|
||||
|
||||
if last then put;
|
||||
run;
|
||||
|
||||
data proc;
|
||||
length name $ 35;
|
||||
set proc end=last;
|
||||
format name;
|
||||
file "check-proc.sas";
|
||||
name='proc '||trim(name)||';run;quit;';
|
||||
put name;
|
||||
run;
|
||||
23
lisp/ess/etc/proc.txt
Normal file
23
lisp/ess/etc/proc.txt
Normal file
@@ -0,0 +1,23 @@
|
||||
"access" "aceclus" "adaptivereg" "aggregation" "anom" "anova" "append" "appsrv" "arima" "assess" "astore" "authlib" "autoreg"
|
||||
"bchoice" "bglimm" "binning" "bnet" "bom" "boolrule" "boxplot" "build"
|
||||
"calendar" "calis" "callrfc" "cancorr" "candisc" "capability" "cardinality" "carima" "cas" "casutil" "catalog" "catmod" "causalgraph" "causalmed" "causaltrt" "ccdm" "ccopula" "cesm" "chart" "cimport" "clp" "cluster" "cntselect" "compare" "compile" "computab" "contents" "convert" "copula" "copy" "corr" "correlation" "corresp" "countreg" "cpanel" "cpm" "cport" "cqlim" "cspatialreg" "cusum" "cv2view"
|
||||
"datasets" "datasource" "datekeys" "db2ext" "db2util" "dbcstab" "dbf" "dbload" "delete" "dfil" "dif" "discrim" "display" "distance" "dmsrvadm" "dmsrvdatasvc" "dmsrvprocesssvc" "document" "download" "dqloclst" "dqmatch" "dqscheme" "ds2" "dstods2" "dtree"
|
||||
"ecm" "entropy" "esm" "expand" "explode" "export"
|
||||
"factex" "factmac" "factor" "fastclus" "fastknn" "fcmp" "fedsql" "fism" "fmm" "fmtc2itm" "fontreg" "forest" "format" "forms" "freq" "freqtab" "fsbrowse" "fsedit" "fsletter" "fslist" "fsview"
|
||||
"g3d" "g3grid" "ga" "gam" "gammod" "gampl" "gamselect" "ganno" "gantt" "gareabar" "gbarline" "gchart" "gcontour" "gdevice" "gee" "genmod" "genselect" "geocode" "gfont" "ginside" "gis" "gkpi" "glimmix" "glm" "glmmod" "glmpower" "glmselect" "gmap" "gmm" "goptions" "gplot" "gproject" "gradar" "gradboost" "greduce" "gremove" "greplay" "groovy" "gslide" "gtile" "gvarclus"
|
||||
"hadoop" "hdmd" "hmm" "hp4score" "hpbin" "hpbnet" "hpboolrule" "hpcandisc" "hpcdm" "hpclus" "hpcopula" "hpcorr" "hpcountreg" "hpdecide" "hpdmdb" "hpds2" "hpexport" "hpf" "hpfarimaspec" "hpfdiagnose" "hpfengine" "hpfesmspec" "hpfevents" "hpfexmspec" "hpfidmspec" "hpfmm" "hpforest" "hpfreconcile" "hpfrepository" "hpfselect" "hpftemprecon" "hpfucmspec" "hpgenselect" "hpimpute" "hplmixed" "hplogistic" "hpmixed" "hpneural" "hpnlmod" "hppanel" "hppls" "hpprincomp" "hpqlim" "hpquantselect" "hpreduce" "hpreg" "hprisk" "hpsample" "hpseverity" "hpsplit" "hpsummary" "hpsvm" "hptmine" "hptmscore" "http"
|
||||
"ica" "iclifetest" "icphreg" "iml" "import" "imstat" "imxfer" "inbreed" "infomaps" "iomoperate" "irt" "ishikawa" "items"
|
||||
"javainfo" "json"
|
||||
"kclus" "kde" "kpca" "krige2d"
|
||||
"lasr" "lattice" "lifereg" "lifetest" "lmixed" "loan" "localedata" "loess" "logistic" "logselect" "lua"
|
||||
"macontrol" "mapimport" "mbanalysis" "mbc" "mcmc" "mdc" "mddb" "mds" "mdsummary" "means" "metadata" "metalib" "metaoperate" "mi" "mianalyze" "migrate" "mixed" "modeclus" "model" "modelmatrix" "mtlearn" "multtest" "mvpdiagnose" "mvpmodel" "mvpmonitor" "mwpca"
|
||||
"nested" "netdraw" "network" "nlin" "nlmixed" "nlmod" "nmf" "nnet" "npar1way"
|
||||
"odslist" "odstable" "odstext" "olap" "olapcontents" "olapoperate" "operate" "optex" "optgraph" "options" "optload" "optlp" "optlso" "optmilp" "optmodel" "optnet" "optnetwork" "optqp" "optsave" "orthoreg"
|
||||
"panel" "pareto" "partition" "pca" "pdlreg" "pds" "pdscopy" "phreg" "phselect" "plan" "plm" "plot" "pls" "plsmod" "pm" "pmenu" "power" "presenv" "princomp" "prinqual" "print" "printto" "probit" "proto" "prtdef" "prtexp" "psmatch" "pwencode"
|
||||
"qdevice" "qlim" "qtrselect" "quantlife" "quantreg" "quantselect" "quest"
|
||||
"rank" "rareevents" "rdc" "rdpool" "rdsec" "recommend" "reg" "registry" "regselect" "release" "reliability" "report" "risk" "rmstreg" "robustreg" "rpca" "rsreg"
|
||||
"s3" "sandwich" "scaproc" "score" "scoreaccel" "semisuplearn" "seqdesign" "seqtest" "server" "severity" "sevselect" "sgdesign" "sgmap" "sgpanel" "sgpie" "sgplot" "sgrender" "sgscatter" "shewhart" "sim2d" "similarity" "simlin" "simnormal" "simsystem" "smcalib" "smproject" "smscore" "smselect" "smspec" "soap" "sort" "source" "sparseml" "spatialreg" "spc" "spdo" "spectra" "spp" "sql" "sqoop" "ssm" "standard" "statespace" "stdize" "stdrate" "stepdisc" "stp" "stream" "summary" "surveyfreq" "surveyimpute" "surveylogistic" "surveymeans" "surveyphreg" "surveyreg" "surveyselect" "svdd" "svmachine" "syslin"
|
||||
"tabulate" "tapecopy" "tapelabel" "textmine" "timedata" "timeid" "timeplot" "timeseries" "tmodel" "tmscore" "tpspline" "transpose" "transreg" "trantab" "tree" "treesplit" "tscsreg" "tsinfo" "tsmodel" "tsne" "tsreconcile" "ttest"
|
||||
"ucm" "univariate" "upload"
|
||||
"varclus" "varcomp" "varimpute" "variogram" "varmax" "varreduce" "vasmp"
|
||||
"x11" "x12" "x13" "xsl"
|
||||
Reference in New Issue
Block a user