Showing posts with label emacs. Show all posts
Showing posts with label emacs. Show all posts

2013-05-22

Scripting with Scala and SBT

I wanted to write about a great experience I had with Scala and SBT today. This morning I had to write a script to convert one .csv file into another. I figured, there's no way I'm not doing this in Scala. So I sat down to write my little script. I opened up script.scala in my current directory, and started typing:

object script extends App {
  println("hi")
}

2011-07-08

Bash/Emacs Rename Refactoring

In my last post I was talking about using Emacs as an IDE for Scala. I imagine you might have a range of objections to such a thing. For instance, what about renaming a class? Between bash and Emacs, it's easy enough. Suppose I want to rename a class from BeezleBopple to BoppleBeezle. Assuming I am confident that there are no occurrences of the text "BeezleBopple" in my code that is not a reference to this class, (this is never really a problem for me, as I tend to name my classes things like CurrentBatchSelectionChangedEvent), I can perform the following steps.

Scala, Emacs and Etags

I've been using Emacs exclusively as my Scala IDE for the last few months. The emacs major mode for Scala is pretty good. It comes with the standard Scala distribution under misc/scala-tool-support/emacs. To load this in to your Emacs environment, I put the following two lines in my .emacs file:
(add-to-list 'load-path "/path/to/scala/misc/scala-tool-support/emacs")
(require 'scala-mode-auto)
I have a couple of gripes about formatting issues, and I may look at "fixing" them some time, but they are very small things, and I can work around them.

UPDATE: The Emacs major mode for Scala is now provided in a separate scala-tool-support archive from the downloads page. Also, a special thanks to whoever fixed the gripes about formatting issues I had!