I have prepared a minimal working example to check that other dependancies have not interfered with this. The test function is:
(defun test-haskell-problems ()
(interactive)
(insert (s-lower-camel-case "other_string")))
And a full reproduction of the problem (with package installation) occurs with this:
(setq package-list '(
s
haskell-mode
))
(when (>= emacs-major-version 24)
(require 'package)
(package-initialize)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
)
; activate all the packages (in particular autoloads)
(package-initialize)
; fetch the list of packages available
(when (not package-archive-contents)
(package-refresh-contents))
; install the missing packages
(dolist (package package-list)
(when (not (package-installed-p package))
(package-install package)))
(require 's)
(defun test-haskell-problems ()
(interactive)
(insert (s-lower-camel-case "other_string")))
By activating this function test-haskell-problems
in a haskell buffer we get the string result other_string
expected result and result in *scratch*
buffer is otherString
I don't understand what's happening here?
Does anyone have any ideas?