You are not logged in.

#1 2015-11-25 18:33:45

winny-
Member
Registered: 2015-11-25
Posts: 4

GNU Smalltalk's emacs support missing

Hi! I'm unsure where this post belongs, so I chose Newbie's Corner.

I installed smalltalk 3.2.5-3 and opened up a smalltalk file in emacs, and noticed it didn't start the smalltalk major mode. Upon inspection of the smalltalk package, the emacs support files are not included.

So my question is two-fold:

  1. Is this intentional or a packaging bug?

  2. How do I get the emacs support files via a package manager (emacs 24's built-in or pacman)? They are not on MELPA, only seem to be shipped with GNU smalltalk.

Offline

#2 2015-11-30 03:37:49

vdksoda
Member
Registered: 2015-11-29
Posts: 1

Re: GNU Smalltalk's emacs support missing

While the package maintainer is best placed to answer 1, I suspect it is intentional If you take a look at the PKGBUILD https://projects.archlinux.org/svntogit … /smalltalk you can see the --without-emacs.

For 2:
I suspect there is a way to install the pacman package with a modified PKGBUILD file where you remove the --without-emacs flag. The other commands in PKGBUILD is just simply make and install so this should work. But I'm not sure what the behaviour would be when you do a pacman -Syu.

What I tried:
1 -  Download the pacman smalltalk package and install. The reasons is, I suspect it is more likely to have actual updates to smalltalk that to the emacs mode files in the long run. This setup would let you do pacman -Syu without worries.
2 - Then manually build the same smalltalk package to some folder in your home directory just to have the .el files populate the details to grant a smalltalk-mode in emacs. Then make the following changes, considering you installed in ~/mysmalltalk;
a - Navigate to ~/mysmalltalk/share/emacs/site-lisp/ and ~/mysmalltalk/share/emacs/site-lisp/site-start.d/ and delete any .elc files. This is done because emacs when it autoloads from a folder containing the el and elc version of a file prefers to load the elc. Plus we can't edit the elc version easily.
b - In gst-mode.el change (defvar gst-program-name <something>) to (defvar gst-program-name "/usr/bin/gst -V")
c - In your ~/.emacs file add the following:
(add-to-list 'load-path "~/mysmalltalk/share/emacs/site-lisp")
(load "~/mysmalltalk/share/emacs/site-lisp/site-start.d/smalltalk-mode-init.el")

I did this and got some functionality of smalltalk mode in emacs. I am not familiar with smalltalk so could not test all functionality but I did get an interpreter window open in emacs aside a smalltalk-mode buffer.

While writing this response it occurred to me that you could flip the installation. Mainly:
1 - Install smalltalk manually following precisely the flags as in the PKGBUILD file here https://projects.archlinux.org/svntogit … /smalltalk however --with-emacs
2 - with that done then install the pacman smalltalk package. This will replace all the manually installed files with the pacman versions but leave the emacs modes files with the right paths for smalltalk untouched.
Note this is untested. But seems most clean and efficient.

Offline

Board footer

Powered by FluxBB