Live data from Hacker News

Emacs 24.4 RC 1

lists.gnu.org

61–70 of 71 posts

Re: Emacs 24.4 RC 1

#61

I'm hoping that the Mac OS X build ( http://emacsformacosx.com ) will soon link with libxml2 so I can use the eww browser. :)

Is there a reason you don't use the Homebrew version of Cocoa Emacs?

I did not know about Homebrew's Cocoa Emacs. Thanks for the tip. I'm installing it now and will see if I get 24.4 with eww or some previous version (minus the eww). Thanks again!

Re: Emacs 24.4 RC 1

#62

Earlier quoted context omitted.

Personally, I started out using Emacs because I wasn't a big fan of the "modal" style of vi (insert/command mode). Later on, I started pair programming in shared GNU Screen sessions, in which we ran vim; a pile of "how did you make that change so quickly" questions later, and I ended up switching to vim for the speed of basic text editing tasks, which save more time than I lose by not having as many high-level mode-s…

' "how did you make that change so quickly" questions later, and I ended up switching to vim"' Heh... what a perfectly beautiful little invitation to a flame-war. If it was about 5 years ago, I would have fallen for it in a minute ;-)

It didn't sound like an invitation to a flame war to me at all. It sounded like his honest personal experience.

Re: Emacs 24.4 RC 1

#63

Earlier quoted context omitted.

Is there a reason you don't use the Homebrew version of Cocoa Emacs?

I did not know about Homebrew's Cocoa Emacs. Thanks for the tip. I'm installing it now and will see if I get 24.4 with eww or some previous version (minus the eww). Thanks again!

If you ran the install with --devel you should get 24.4-rc1

Re: Emacs 24.4 RC 1

#64

Earlier quoted context omitted.

Elisp is not Scheme and certainly is not Haskell. You shouldn't - and I'd say it a good general rule - judge Elisp based on what it's not instead of what it is. Getting back to actual question: Elisp supports "real" lexical scoping since previous major Emacs version, and it has had "lexical-let" and other such forms since forever, but most of the code is still dynamically scoped. In practical terms it's similar to ha…

Your code fails to suppress beeping behavior on my Mac for certain values of beeping-function. In particular, when I eval the following, I get a beep. (require 'cl) (setq lexical-binding nil) (defun beeping-function () (save-excursion (set-buffer "*Messages*") (goto-char (point-max)) (scroll-up))) (letf (((symbol-function 'beep) (lambda ()))) (beeping-function)) I tried to repair it: I ran the code in a fresh Emacs s…

As you can easily check with M-x find-function a `scroll-up` function is implemented in C. This is a known problem - I can't find it right now, but I remember I once read a blog post where the author complained about this: in general you're not going to get good results when trying to advise, override or modify C-level functions from Elisp code.

IIRC cl-flet was recently (well, in the current decade I think :)) modified to be lexically scoped, so that won't work (anymore). This is why I had to use `letf` with `(symbol-function 'symbol)` instead of a neater `(flet ((beep ())) ...)`.

Personally I deal with beeping like this:

    (setq ring-bell-function (lambda ()))
but this disables any beeping, which may not be what you want. In short, things you `setq` or more generally `setf` tend to be visible from C functions (no guarantees though).

On the other hand my Emacs (on Linux) refuses to beep in any circumstances even if I run it with `emacs -Q` and do M-: (beep) - I have no idea why, I suspect it's either my sound configuration or has to do with the way I built my emacs from source.

I'd say for this:

    (funcall
      (funcall
          (lambda (a) (lambda (b) a))
          1)
      2)
raising a (void-variable a) error is correct behaviour under dynamic scoping. On my system (Emacs 25.0.50.2 x86_64-unknown-linux-gnu) it fails with void-variable under normal circumstances, but returns 1 when used with lexical scoping enabled. If your Emacs behaves differently (and remember to always check with emacs -Q just to be sure it's not something in your config) that's probably a bug.

Re: Emacs 24.4 RC 1

#65
post #4

As someone who uses emacs purely for clojure/lisp and vim for everything else, the biggest feature for me is the fact that this will be the first version of emacs to support menus in terminal mode . So for all the commands you don't remember, a menu is now a click or F10 away. To quote, "Emacs now supports menus on text-mode terminals. If the terminal supports a mouse, clicking on the menu bar, or on sensitive portio…

Just curious. How did you manage to use both emacs and vim? I've seen that people accustomed to one editor are usually averse to using the other.

Not really. There are lots of people who get off on imaginary rivalries and enjoy exaggerating the virtues of what they like and the flaws of what they don't like. Some of the more self-aware people know what they're doing and consider it all in good fun, but the dumb ones just go along with it because they actively enjoy engaging in tribalism.

See also casual sports fans who don't understand the game they watch, but understand and enjoy pretending to love one team unconditionally for no particular reason, and hating another team for no reason other than it's fun for them to hate somebody. Ditto for operating system fanboys of all stripes.

Re: Emacs 24.4 RC 1

#66
post #28
post #19

Earlier quoted context omitted.

Hehe because I don't subscribe to monotheism? ;) I prefer vim's modal editing mode and have been using it as my primary for as long as I can remember. For clojure/lisp, I found that the vim tooling was just not as elegant/efficient as emacs (fireside et al arent as nice as cider/swank), and decided to learn how to use it. It's not that much of an "antipattern" because the keymaps are very different. I don't like usin…

Can you tell me more about why cider > fireplace? I'm a clojure developer working in vim, I've considered moving over to emacs a few times, and I'd love to hear what you see as the advantages.

@MBlume - first and foremost, the installation process for me for fireplace was fraught with issues. I installed lein.vim, fireplace, and a bunch of other stuff from all the allied projects : as much as I love vim, it was too much overheard for me to just go through all that! Once I did get it working (and after having worked with emacs/swank/lisp before) - it was just very unintuitive to me. It also feels much slower than cider, and doesn't offer things like the inspector for stack traces and things that cider can. Most importantly, I think the inferior mode in emacs is just a pleasure to use in terms of functionality - I've used it with R, lisp, clojure, and ipython. It's a very neat/clean interface.

There's also the fact that all of these modes are a simple M-x-package-install away and they just work. It's kind of like choosing OS X for me after using Linux as my main OS for years and years - I didn't have to worry about the wifi card not being detected or my dual screen display needing a lot of kernel modules : things just work :)

Re: Emacs 24.4 RC 1

#67

Earlier quoted context omitted.

Your code fails to suppress beeping behavior on my Mac for certain values of beeping-function. In particular, when I eval the following, I get a beep. (require 'cl) (setq lexical-binding nil) (defun beeping-function () (save-excursion (set-buffer "*Messages*") (goto-char (point-max)) (scroll-up))) (letf (((symbol-function 'beep) (lambda ()))) (beeping-function)) I tried to repair it: I ran the code in a fresh Emacs s…

As you can easily check with M-x find-function a `scroll-up` function is implemented in C. This is a known problem - I can't find it right now, but I remember I once read a blog post where the author complained about this: in general you're not going to get good results when trying to advise, override or modify C-level functions from Elisp code. IIRC cl-flet was recently (well, in the current decade I think :)) modif…

>If your Emacs behaves differently . . . that's probably a bug.

Yes, it behaves differently (with lexical-binding set to t and with the -Q flag).

Re: Emacs 24.4 RC 1

#68
post #39

I'm hoping that the Mac OS X build ( http://emacsformacosx.com ) will soon link with libxml2 so I can use the eww browser. :)

How's this compare with Aquamacs ( http://aquamacs.org )?

My feeling is that it's much better than aquamacs. Aquamacs does some things enough differently to regular emacs that I just fine working with homebrew emacs (or emacsforosx) less effort when installing new packages.

Re: Emacs 24.4 RC 1

#69
post #63

Earlier quoted context omitted.

I did not know about Homebrew's Cocoa Emacs. Thanks for the tip. I'm installing it now and will see if I get 24.4 with eww or some previous version (minus the eww). Thanks again!

If you ran the install with --devel you should get 24.4-rc1

Thanks for the advice!

Re: Emacs 24.4 RC 1

#70
post #29
post #27

Earlier quoted context omitted.

Have you tried Helm in Emacs? For me it binds to M-x, and I can find a "lost" command by typing just bits. For example "M-x tree undo" show me "undo-tree-visualize (C-x u)". Now I use Helm all over the place: (recent) file opening (within the current project), buffer switching, grepping, etc. It really changed how I interface Emacs.

What's the advantage of Helm to Ido?

I wrote it in my guide: http://tuhdo.github.io/helm-intro.html#sec-2
Post reply on HN