File emacs-ess.spec of Package emacs-ess
# This is an RPM spec file that specifies how to package
# ESS for Suse Linux, at least versions later than 10.0
# (older 9.x Version should work also!)
# Most of the work was done by Tom Moertel (tom-rpms@moertel.com),
# only distribution specific quirks were needed to get it to work on SuSE
Summary: Emacs Speaks Statistics add-on package for Emacs
Name: emacs-ess
Version: 17.11
Release: 2.141
License: GPL-2.0
Group: Development/Languages/Other
#Source: http://ess.r-project.org/index.php?Section=download
SOURCE: ess-%{version}.tgz
URL: http://ess.r-project.org/
BuildRoot: %{_tmppath}/%{name}-root
BuildArchitectures: noarch
PreReq: %install_info_prereq
BuildRequires: emacs-nox
BuildRequires: texinfo
BuildRequires: fdupes
%if %suse_version <= 1230
BuildRequires: texlive-bin-latex, texlive-bin
%endif
%if %suse_version > 1230
BuildRequires: texlive-texinfo
%endif
Requires: emacs
%description
This package provides Emacs Speaks Statistics (ESS), which provides
Emacs-based front ends for popular statistics packages.
ESS provides an intelligent, consistent interface between the user and
the software. ESS interfaces with R, julia, S-PLUS, SAS, BUGS and other
statistical analysis packages under the Unix, Microsoft Windows, and
Apple Mac OS operating systems. ESS is a package for the GNU Emacs
and XEmacs text editors whose features ESS uses to streamline the
creation and use of statistical software. ESS knows the syntax and
grammar of statistical analysis packages and provides consistent
display and editing features based on that knowledge. ESS assists in
interactive and batch execution of statements written in these
statistical analysis languages.
%prep
%setup -n ess-%{version}
( cd doc && chmod u+w html info refcard) # fix perms to ensure builddir can be deleted
%build
make
# create an init file that is loaded when a user starts up emacs to
# tell emacs to autoload our package's Emacs code when needed
cat > %{name}-init.el <<EOF
;;; Set up %{name} for Emacs.
;;;
;;; This file is automatically loaded by emacs's site-start.el
;;; when you start a new emacs session.
;; (require 'ess-site)
;; this was too invasive
(add-to-list 'load-path "/usr/share/emacs/site-lisp/emacs-ess")
EOF
# SuSE hat einen anderen Mechanismus: alle Dateien in %emacspkgdir
# mit suse-start-.*el werden ausgeführt
# create a README.RPM file to document any quirks of this package
cat > README.RPM <<EOF
README for %{name}-%{version}-%{release} RPM package
Generally, there will be no need to modify your .emacs file in order
to use the features of this package -- they are enabled by default
when you start Emacs.
Thanks to Tom Moertel for the spec file included in the ess source distribution.
Only minor modifications were needed to get it to work on SuSE.
Cheers,
Detlef
--
Detlef Steuer <steuer@hsu-hh.de>
EOF
%install
INITDIR=${RPM_BUILD_ROOT}%{_datadir}/emacs/site-lisp
PKGLISP=${RPM_BUILD_ROOT}%{_datadir}/emacs/site-lisp/%{name}
INFODIR=${RPM_BUILD_ROOT}%{_infodir}
DOCDIR=${RPM_BUILD_ROOT}%{_datadir}/doc/packages/emacs-ess
%{__install} -m 755 -d $INITDIR
%{__install} -m 644 %{name}-init.el $INITDIR/suse-start-%{name}-init.el
%{__install} -m 755 -d $PKGLISP
%{__install} -m 755 -d $INFODIR
%{__install} -m 755 -d $DOCDIR
%{__make} install \
PREFIX=${RPM_BUILD_ROOT}%{_prefix} \
LISPDIR=$PKGLISP \
INFODIR=$INFODIR \
ETCDIR=$PKGLISP/etc \
DOCDIR=$DOCDIR
%{__rm} -f $INFODIR/dir # don't package but instead update in pre and post
%{__cp} -a etc $PKGLISP # took ess's /etc into lisp dir for easy transport
#%fdupes %{buildroot}%{_prefix}
# Uncomment to print the README file after install.
#
# %post
# echo
# cat %{_defaultdocdir}/%{name}-%{version}/README.RPM
# echo
%clean
#%{__rm} -rf ${RPM_BUILD_ROOT}
%define __requires_exclude ^/usr/bin/Rscript$
%files
%defattr(-,root,root)
%doc README README.RPM ANNOUNCE COPYING VERSION ChangeLog
%doc %{_datadir}/doc/packages/emacs-ess/*
# doc
%dir %{_datadir}/emacs/site-lisp/%{name}
%{_datadir}/emacs/site-lisp/%{name}/*
%{_datadir}/emacs/site-lisp/suse-start-emacs-ess-init.el
%{_infodir}/*.gz
%post
%install_info --info-dir=%{_infodir} /usr/share/info/ess.info.gz
%postun
%install_info_delete --info-dir=%{_infodir} /usr/share/info/ess.info.gz
%changelog
* Mon Nov 13 2017 detlef.steuer@gmx.de
- upstream updated the tgz
- (require 'subr-x) removed, therfore enabling work
with older emacsen.
* Mon Nov 13 2017 detlef.steuer@gmx.de
- upstrem updated to 17.11
- removed check for SuSE before 10.2
- Changes and New Features in 17.11:
* The ESS initialisation process has been streamlined. You can now
load the R and Stata modes independently from the rest of ESS. Just
put '(require 'ess-r-mode)' or '(require 'ess-stata-mode)' in your
init file. This is for experienced Emacs users as this requires
setting up autoloads for '.R' files manually. We will keep
maintaining 'ess-site' for easy loading of all ESS features.
* Reloading and quitting the process is now more robust. If no
process is attached, ESS now switches automatically to one
(prompting you for selection if there are several running).
Reloading and quitting will now work during a debug session or when
R is prompting for input (for instance after a crash). Finally,
the window configuration is saved and restored after reloading to
prevent the buffer of the new process from capturing the cursor.
* ESS[R]: New command 'ess-r-package-use-dir'. It sets the working
directory of the current process to the current package directory.
* ESS[R] Lookup for references in inferior buffers has been improved.
New variable 'ess-r-package-source-roots' contains package
sub-directories which are searched recursively during the file
lookup point. Directories in 'ess-tracebug-search-path' are now
also searched recursively.
* ESS[R] Namespaced evaluation is now automatically enabled only in
the 'R/' directory. This way ESS will not attempt to update
function definitions from a package if you are working from e.g. a
test file.
Changes and New Features in 16.10:
* ESS[R]: Syntax highlighting is now more consistent. Backquoted
names are not fontified as strings (since they really are
identifiers). Furthermore they are now correctly recognised when
they are function definitions or function calls.
* ESS[R]: Backquoted names and '%%op%%' operators are recognised as
sexp. This is useful for code navigation, e.g. with 'C-M-f' and
'C-M-b'.
* ESS[R]: Integration of outline mode with roxygen examples fields.
You can use outline mode's code folding commands to fold the
examples field. This is especially nice to use with well
documented packages with long examples set. Set
'ess-roxy-fold-examples' to non-nil to automatically fold the
examples field when you open a buffer.
* ESS[R]: New experimental feature: syntax highlighting in roxygen
examples fields. This is turned off by default. Set
'ess-roxy-fontify-examples' to non-nil to try it out.
* ESS[R]: New package development command 'ess-r-devtools-ask' bound
to 'C-c C-w C-a'. It asks with completion for any devtools command
that takes 'pkg' as argument.
* ESS[R]: New command 'C-c C-e C-r' to reload the inferior process.
Currently only implemented for R. The R method runs
'inferior-ess-r-reload-hook' on reloading.
* ESS[R]: 'ess-r-package-mode' is now activated in non-file buffers
as well.
* Tue Nov 1 2016 detlef.steuer@gmx.de
- upstream updated to 16.10
- Makefile from 1.11.2016, julia-mode.el manually added
Changes and New Features in 16.10:
* ESS[R]: Syntax highlighting is now more consistent. Backquoted
names are not fontified as strings (since they really are
identifiers). Furthermore they are now correctly recognised when
they are function definitions or function calls.
* ESS[R]: Backquoted names and '%%op%%' operators are recognised as
sexp. This is useful for code navigation, e.g. with 'C-M-f' and
'C-M-b'.
* ESS[R]: Integration of outline mode with roxygen examples fields.
You can use outline mode's code folding commands to fold the
examples field. This is especially nice to use with well
documented packages with long examples set. Set
'ess-roxy-fold-examples' to non-nil to automatically fold the
examples field when you open a buffer.
* ESS[R]: New experimental feature: syntax highlighting in roxygen
examples fields. This is turned off by default. Set
'ess-roxy-fontify-examples' to non-nil to try it out.
* ESS[R]: New package development command 'ess-r-devtools-ask' bound
to 'C-c C-w C-a'. It asks with completion for any devtools command
that takes 'pkg' as argument.
* ESS[R]: New command 'C-c C-e C-r' to reload the inferior process.
Currently only implemented for R. The R method runs
'inferior-ess-r-reload-hook' on reloading.
* ESS[R]: 'ess-r-package-mode' is now activated in non-file buffers
as well.
Bug fixes in 16.10:
* ESS[R]: Fix broken (un)flagging for debugging inside packages
* ESS[R]: Fixes (and improvements) in Package development
* ESS[R]: Completion no longer produces '...=' inside 'list( )'.
* ESS[R]: Better debugging and tracing in packages.
* ESS[R]: Better detection of symbols at point.
* ESS[R]: No more spurious warnings on deletion of temporary files.
* ESS[julia]: help and completion work (better)
* ESS[julia]: available via 'ess-remote'
* Tue May 10 2016 detlef.steuer@gmx.de
- upstream updated to 16.04
Changes and New Features in 16.04:
* ESS[R]: 'developer' functionality has been refactored. The new
user interface consists of a single command
'ess-r-set-evaluation-env' bound by default to 'C-c C-t C-s'. Once
an evaluation environment has been set with, all subsequent ESS
evaluation will source the code into that environment. By default,
for file within R packages the evaluation environment is set to the
package environment. Set 'ess-r-package-auto-set-evaluation-env'
to 'nil' to disable this.
* ESS[R]: New 'ess-r-package-mode' This development mode provides
features to make package development easier. Currently, most of
the commands are based on the 'devtools' packages and are
accessible with 'C-c C-w' prefix. See the documentation of
'ess-r-package-mode' function for all available commands. With
'C-u' prefix each command asks for extra arguments to the
underlying devtools function. This mode is automatically enabled
in all files within R packages and is indicated with '[pkg:NAME]'
in the mode-line.
* ESS[R]: Help lookup has been improved. It is now possible to get
help for namespaced objects such as pkg::foobar. Furthermore, ESS
recognizes more reliably when you change 'options('html_type')'.
* ESS[R]: New specialized breakpoints for debugging magrittr pipes
* ESS: ESS now implements a simple message passing interface to
communicate between ESS and inferior process.
* Fri Dec 11 2015 detlef.steuer@gmx.de
- Now with correct source file.
* Fri Dec 11 2015 detlef.steuer@gmx.de
- upstream updated to 15.09-2
It fixes small glitches with (the new more flexible and
powerful) indentation engine.
In addition
- it improves Roxygen editing (line wrapping; filling);
- knitr/Sweave interface cosmetics, notably a new
M-x ess-swv-weave-PDF (bound to M-n v ('v' for 'v'iew)).
- SAS and coda/BUGS improvements
- prevents infinite loops in some border cases
* Tue Oct 27 2015 detlef.steuer@gmx.de
- upstream updated to 15.09-1
This is primarily a bug fix release for ESS 15.09 (released on Sep. 24).
Notably it was reported by Jason Morgan to ESS-bugs, that Emacs
typically can become *VERY* slow (yes, "up to looking frozen"),
when you have several 1000's of lines (of R output) in your *R* buffer.
Release 15.09-1 fixes this, and adds some indentation
improvements, too. Remember that ESS' indentation system was
basically completely refurbished for ESS 15.09.
* Wed Sep 30 2015 detlef.steuer@gmx.de
- upstream updated to 15.09
Changes and New Features in 15.09:
* ESS[R]: The indentation logic has been refactored. It should be
faster, more consistent and more flexible. There are three types
of indentation settings, those starting with 'ess-offset-' give the
actual offsets, those starting with 'ess-indent-' are control
(commonly Boolean) variables, and those starting with 'ess-align-'
are vertical alignment overrides which inhibit default offsets in
specific situations. See 'ess-style-alist' for detailed
description of the new indentation system and provided default
indentation styles.
* ESS[R]: Deprecation of old indentation settings. As a consequence
of the indentation re-factoring 'ess-brace-imaginary-offset',
'ess-expression-offset' and all delimiter-specific offsets are
deprecated. The settings for indentation of continued statements
have been replaced by 'ess-offset-continuations'. It can be set to
either 'cascade' or 'straight' (the default).
'ess-arg-function-offset' has been replaced by
'ess-indent-from-lhs' and has been generalised to assignements.
This setting now works with both statement blocks and expressions
and only takes effect for offsets set to 'prev-call' and
'open-delim' in order to produce a consistent indentation.
* ESS: A test framework has been set up.
* ESS[R]: A new RStudio style is provided to mimic as closely as
possible R files indented via RStudio. To reproduce the setup of
some of the RStudio users, the RStudio- style with
'ess-offset-arguments' set to 'prev-line' is also provided. In
addition, the new RRR+ style is equivalent to RRR except it indents
blocks in function calls relatively to the opening delimiter. This
style does not try to save horizontal space and produces more
indentation.
* ESS[R]: Roxygen fields will now be indented on paragraph refilling
in order to make the documentation more readable. You can also
refill commented lines in the 'examples' field without squashing
the surrounding code in the comments.
* ESS[R]: ESS can now format your code! This is controlled through
the settings 'ess-fill-calls' and 'ess-fill-continuations'. When
activated, '(fill-paragraph)' formats your calls and your
formulas/continuations while making sure they don't go past
'fill-column'. Repeated refills cycle through different styles
(see the docstrings for more details). By default, the refilled
region blinks. Set 'ess-blink-filling' to nil to prevent this.
* ESS[R]: Fix occasional missing error location fontification in
inferior buffers.
* ESS[R]: ess-developer now correctly assigned the environment of new
functions to the package namespace.
* ESS[Julia]: ?[topic] now works in the *julia* buffer. Note that
support for editing Julia code now depends on 'julia-mode.el' from
the Julia project. If you install ESS from the official
tarball/zip file, 'julia-mode.el' is already included. Otherwise,
if you install ESS by running 'make', then the latest version of
'julia-mode.el' is downloaded (and so you need an active internet
connection to install) during the installation process.
Alternatively, if you run ESS without running 'make', then ensure
that you have the 'julia-mode.el', which you can get easily from
MELPA for example.
* iESS: For naming inferior processes, ESS can use 'projectile''s
project root and it does so when
'ess-gen-proc-buffer-name-function' is set to
'ess-gen-proc-buffer-name:projectile-or-simple' as by default, or
to another value beginning with
'ess-gen-proc-buffer-name:projectile-*'.
* Fri Apr 24 2015 detlef.steuer@gmx.de
- source renamed ess-15.03.1.tgz
* Fri Apr 24 2015 detlef.steuer@gmx.de
- bug fix release by upstream 15.03-1
Changes and New Features in 15.03-1:
ESS[R]: An indentation bug has been fixed (github issue 163)
ESS[R]: On windows, if 'ess-prefer-higher-bit' is non-nil (the
default), then R-newest will try to run a 64 bit (rather than 32
bit) version of R.
* Wed Apr 1 2015 detlef.steuer@gmx.de
- upstream updated to 15.03
Changes and New Features in 15.03:
* ESS[R]: Full native support for 'company-mode'.
* ESS[R]: More efficient caching algorithm for R completion.
* ESS: New offset variable 'ess-close-paren-offset' to control the
indentation of the closing parentheses.
* ESS[R]: Ask for CRAN mirror only once per emacs session.
* ESS[R]: Detect 'library' and 'require' calls for better completion
caching.
* Buffer display is now customizable ('ess-show-buffer-action').
* Use 'y-or-n-p' instead of 'yes-or-no-p' throughout.
* More support for ODS in ess-sas-graph-view.
* Makefiles are now both UNIX and GNU friendly.
* ESS[R]: Simplify directory lookup in 'ess-developer' (#137).
* Make closed paren indentation consistent
Bug Fixes in 15.03:
* Fix open brace indentation bug (#27 in ess/R-ESS-bugs.R).
* Fix git version lookup
* Don't check directory modtime in R dialect.
* Declare all ess macros for edebug.
* Add 'ess-smart-comma' to eldoc message functions.
* Inform users when retrieving RDA aliases.
* Line ending in '~' is also a continuation line.
* Filing roxy paragraphs works as expected now.
* In 'ess-developer-add-package', remove incorrect 'wait' argument
from 'ess-get-words-from-vector' call.
* Fix #96, #117, #120, #125, #134, #137.
* Fix ess-quit-r. Call base::q() even if it is masked.
* Fix 'ess-show-buffer' to always display the buffer in another
window.
* Makefile: Fix cd bug for directories with spaces in them
* 'ess-kill-buffer-and-go' modified to not restart R
* Tue Oct 28 2014 detlef.steuer@gmx.de
- removed (require 'ess-site) from suse-start-emacs-ess-init.el
now we just add the load path
removed the version number from installation path
now it´s emacs-ess and not emacs-ess-%%{version} anymore
* Fri Oct 10 2014 darin@darins.net
- Uncommented BuildRoot
- Moved old %%changelog entries to .changes
* Tue Sep 23 2014 detlef.steuer@gmx.de
- upstream updated to 14.09
Changes / Selected Bug Fixes in 14.09:
* ESS[Julia]: Executable is changed to 'julia'.
* ESS[Julia]: Completion and help system was adjusted to Julia
v.0.3.0. Julia v.0.2.x is no more supported.
* ESS[R]: Running R with 'gdb' debugger now works as expected
* iESS: Inferior ESS buffers are now derived from 'comint-mode'
* ESS[R]: 'ess-execute-screen-options' uses correct screen width in
terminal sessions
* ESS: 'ess-build-tags-for-directory' works when no TAGS file name
was provided
* ESS: 'ess-continued-statement-offset' is now respected everywhere
except inside of the 'if' test condition.
* ESS: New variable 'ess-first-continued-statement-offset' for
indentation of the first line in multiline statements.
* ESSR: Starting ',' in multiline statements indentation is now
ignored to achieve a more pleasant alignment.
* ESSR: Improved behavior of 'RET' in roxygen blocks.
* ESS[R]: command cleaning with 'C-u C-u C-y' was broken with lines
containing " + "
* ESS[R]: fixed "empty watch window bug"
* ESS[R]: don't ask for help location on ac-quick-help (request of
github #81)
* ESS[R]: "importClassesFrom" and "importMethodsFrom" were added to
the list of two-parameter roxygen commands
* ESS[R]: fix vignetes display and hyperlinks (were broken in
13.09-1)
* ESS[Julia]: recognize function names ending with !
* ESS[Julia]: fix indentation of "for" comprehension syntax within
brackets.
* Tue Jun 3 2014 darin@darins.net
- add buildroot to fix sles builds
* Tue Dec 10 2013 detlef.steuer@gmx.de
- and forgotten sources added
* Mon Dec 9 2013 detlef.steuer@gmx.de
- upstream updated to 13.09.1
* Mon Sep 30 2013 detlef.steuer@gmx.de
- corrected source files
* Mon Sep 30 2013 detlef.steuer@gmx.de
- - upstream update to 13.09
* Thu May 16 2013 detlef.steuer@gmx.de
- improved spec file: duplicated files removed
* Wed May 15 2013 detlef.steuer@gmx.de
- upstream update to 13.05
read the NEWS file! There are real changes this time
* Tue Jan 15 2013 detlef.steuer@gmx.de
- upstrem bugfix release 12.09-2
* Tue Sep 25 2012 detlef.steuer@gmx.de
- upstream updated to 12.09
- most important new feature: julia support
- changes in handling of .Rhistory
* Fri Jun 8 2012 detlef.steuer@gmx.de
- bug fix only release from upstream
* Fri Jun 1 2012 detlef.steuer@gmx.de
- upstream send small patch: ess-12.04-3
* Tue May 15 2012 detlef.steuer@gmx.de
- and addes correct source file ...
* Tue May 15 2012 detlef.steuer@gmx.de
- upstream send small patch : ess-12.04-2
- had to rename to 12.04.2 for naming rules in rpm
* Sun Apr 8 2012 detlef.steuer@gmx.de
- upstream releases minor bugfix release 12.04
* Fri Mar 30 2012 detlef.steuer@gmx.de
- upstream releases 12.03
* Wed Jul 14 2010 steuer@hsu-hh.de
- Upstream releases 5.11
* Thu Jun 10 2010 steuer@hsu-hh.de
- Upstream releases 5.10
* Tue Jun 9 2009 steuer@hsu-hh.de
- Update for 5.4
* Wed Mar 11 2009 steuer@hsu-hh.de
- Update for 5.3.11 and Opensuse 11.1
- Use Docdir ideas from Daniel Sabanes <daniel.sabanesbove@gmx.net>
* Fri Oct 17 2008 steuer@hsu-hh.de
- Update for ESS 5.3.8
* Sat Dec 17 2005 thor@bifur.lab01.moertel.com
- Updated for ESS 5.2.11.
* Mon Sep 12 2005 thor@bifur.lab01.moertel.com
- Updated to ESS 5.2.10
- Changed Copyright tag to License
- Added texinfo to BuildRequires
* Thu May 12 2005 thor@bifur.lab01.moertel.com
- Updated to ESS 5.2.8
* Mon Apr 18 2005 thor@bifur.lab01.moertel.com
- Updated to 5.2.7
* Tue Feb 1 2005 thor@bifur.lab01.moertel.com
- Updated for ESS 5.2.5.
* Thu Jan 13 2005 thor@bifur.lab01.moertel.com
- Updated for ESS 5.2.4.
* Sat Nov 13 2004 thor@bifur.lab01.moertel.com
- Fixed permissions on ...-init.el file
* Fri Oct 15 2004 thor@bifur.lab01.moertel.com
- Updated to ESS 5.2.3.
* Fri Aug 27 2004 thor@bifur.lab01.moertel.com
- Fixed bug: Forgot to include ESS's etc/ directory.
* Thu Aug 26 2004 thor@bifur.lab01.moertel.com
- Initial build.