[slime-devel] Problems getting {}[] recognized as parenthesis

jjkola at email.com jjkola at email.com
Sat Mar 18 18:41:07 UTC 2006


Hi!

I have been trying to make emacs show matching round and square brackets so that I could use meta parser from http://home.pipeline.com/~hbaker1/Prag-Parse.html. I have been using lispbox from http://gigamonkeys.com/book/lispbox which have slime (from cvs 10.1.2006) bundled. I also tried latest cvs version of slime to see if it would work better. I'm using mic-paren module for showing matching parenthesis. I have edited lisp-mode.el from emacs so that it should show matching parenthesis:

(defvar emacs-lisp-mode-syntax-table
  (let ((table (make-syntax-table)))
.
.
.
      (modify-syntax-entry ?\( "()  " table)
      (modify-syntax-entry ?\) ")(  " table)
      (modify-syntax-entry ?\[ "(]  " table)
      (modify-syntax-entry ?\] ")[  " table)
      (modify-syntax-entry ?\{ "(}  " table)
      (modify-syntax-entry ?\} "){  " table))
    table))

(defvar lisp-mode-syntax-table
  (let ((table (copy-syntax-table emacs-lisp-mode-syntax-table)))
    (modify-syntax-entry ?\[ "(]  " table)
    (modify-syntax-entry ?\] ")[  " table)
    (modify-syntax-entry ?\{ "(}  " table)
    (modify-syntax-entry ?\} "){  " table)
    (modify-syntax-entry ?# "' 14bn" table)
    (modify-syntax-entry ?| "\" 23b" table)
    table))

When I checked syntax table mappings in slime mode I got this:

[               _ 	which means: symbol
] .. _          _ 	which means: symbol
{               _ 	which means: symbol
} .. DEL        _ 	which means: symbol

and then

The parent syntax table is:

[               (]	which means: open, matches ]
]               )[	which means: close, matches [
{               (}	which means: open, matches }
}               ){	which means: close, matches {

So is there anything that I could do to make things work?

Yours sincerely,

Jyrki Jaakkola




More information about the slime-devel mailing list