Questions tagged [syntax-table]

is an Emacs Lisp data structure in which each character's syntactic role is defined. Other Emacs facilities, such as font lock, navigation, parsing, etc., scan these syntax tables to determine where words, symbols, and other syntactic constructs begin and end. Syntax tables are unique to every major mode. They are customizable and even overridable with text properties.

Filter by
Sorted by
Tagged with
0 votes
0 answers
15 views

Whitespace in syntax table for comment delimiters in conflict with indentation and font lock

The special file format of my software uses angle brackets as a delimiter and # / # as comment markers (note the whitespace after the first # and before the last #). I try to make a major mode to ...
Lalylulelo's user avatar
0 votes
0 answers
31 views

How do I make single quote function like a double quote in octave mode?

I'm using octave mode for matlab which works great mostly. However, now I've run into a difference in quoting mechanisms between matlab and octave which makes emacs misinterpret the code and mess up ...
user9605929's user avatar
0 votes
1 answer
36 views

Why do Emacs Lisp regular expressions match the percentage and dollar sign as word characters?

I ran into this behavior by accident and it seems quite unusual to me. Why do Emacs Lisp regular expressions match the percentage and dollar sign as word characters? One theory I had was that this is ...
fap's user avatar
  • 141
0 votes
0 answers
72 views

How to instruct AUCTeX to ignore a specific character when indenting?

I'm writing a document with AUCTeX using the songs package. It all works well, but it requires to input chords like in the sequence \[La]. The problem is, AUCTeX ignores the first bracket (since it is ...
Alessandro Bertulli's user avatar
1 vote
1 answer
35 views

Can replace-regexp-lax-whitespace manage "~" as a whitespace?

I have this function: (defvar biblio-publishers-info-list '(("Cambridge University Press" . "Cambridge, U.K.")) "DOCSTRING") (defun biblio-publishers-info-complete ()...
Gabriele Nicolardi's user avatar
1 vote
1 answer
84 views

After setting syntax-propertize-function, comment is not being fontified with comment face

I'm trying to build a major mode for xwiki, where I'm defining {{{ verbatim }}} as a comment. So far, I've done (eval-when-compile (defconst xwiki-syntax-propertize-rules (syntax-...
ackerleytng's user avatar
2 votes
0 answers
16 views

Make a set of characters act as open/close syntax?

Is there a way to make a set of characters act syntactically as open/close brackets? For example, {a> as an opening bracket, and <a} as a closing bracket? I know how to do this with single ...
John Kitchin's user avatar
  • 11.6k
5 votes
1 answer
105 views

How to use a particular syntax table with arbitrary functions?

I have an Elisp function which takes a string and performs capitalization (capitalize) on it, and then inserts it into a file. Apparently capitalize doesn't consider the single quote as a "word ...
sixter's user avatar
  • 113
3 votes
1 answer
401 views

How do I hook fundamental-mode and all modes derived from it for modifying syntax for underscores

Here is the definition of fundamental-mode: (defun fundamental-mode () "Major mode not specialized for anything in particular. Other major modes are defined by comparison with this one." ...
bgoodr's user avatar
  • 339
1 vote
1 answer
191 views

Tex indentation with TAB

Recently, when editing files in LaTex, upon pressing TAB, I get a huge indentation. Instead, the default behavior used to be to align with respect to previous environment definition. : I start with ...
Yair Daon's user avatar
  • 131
0 votes
1 answer
182 views

Treat hyphens as part of a word?

I use: (global-superword-mode t) in my init.el because I don't want Emacs to treat _ as a word delimiter. How do I do the same thing for -? I'd like to enable this globally.
WickedJargon's user avatar
1 vote
1 answer
62 views

Making Emacs see ♥ as punctuation

I'm trying to get emacs to understand ♥ as punctuation. (modify-syntax-entry ?♥ "." text-mode-syntax-table) I'm not sure what the issue is. (That is a unicode heart.) (modify-syntax-entry ?\...
Sandra's user avatar
  • 194
2 votes
0 answers
33 views

Evil text objects on kebab-case behave differently on dw and cw

I would like my evil text objects to work on kebab-case words, so that dw or cw act on the "whole-kebab-word" and not just on "whole". Therefor I have put (modify-syntax-entry ?- "w" clojure-mode-...
Witek's user avatar
  • 335
2 votes
2 answers
200 views

How to use underscores as word boundary for moving cursor?

Python mode annoyingly sets underscore (_) to be part of a word, making editing very tedious. How can one reset this to Emacs's original behaviour?
diemo's user avatar
  • 21
9 votes
2 answers
1k views

How to 'modify-syntax-entry' for a major mode?

Following this answer, when I type (modify-syntax-entry ?_ "w") and do M-x eval-region, it has the effect I'm looking for, albeit only for that buffer. I've put (modify-syntax-entry ?_ "w") in my ....
Swiss Frank's user avatar
0 votes
2 answers
130 views

How do I get Emacs to accept a # (hash) sign as a comment starter in a new mode?

I am attempting to develop an Emacs major mode for writing Tecplot macros. The Tecplot macro language has lots of peculiar constructs, such as a # sign for comments and $! for the beginning of a macro ...
Stephen Alter's user avatar
3 votes
1 answer
119 views

What are the downsides of changing the syntax class of quotes in text-mode and backslash in AUCTeX?

It bothered me that sexp navigation commands didn't treat a quoted string as a single expression in text-mode. This is because the quote character " is in the punctuation syntax class in the text-mode ...
Omar's user avatar
  • 4,732
1 vote
1 answer
55 views

How to run a command with 'modify-syntax-entry' reset?

I have used modify-syntax-entry to remove underscores from being delimiting characters. e.g: (modify-syntax-entry ?_ "w") However I would like to temporary allow underscores to be used as a ...
ideasman42's user avatar
  • 8,395
1 vote
1 answer
101 views

forward-word and non-letter "words"

Using forward-word with this line: foo *** *** bar, I want to have the folowing behavior: foo| ***| ***| bar|, Not: foo| *** *** bar|, So, if between spaces there are only non-letter symbols, ...
A.King's user avatar
  • 53
0 votes
1 answer
180 views

font-lock keywords and syntax-table mutually interfering

I would like to define something that font-locks a bit like a new sort of string-literal/comment. I might write: (font-lock-add-keywords 'emacs-lisp-mode (list '("<<.*>>" 0 'my-custom-...
Michael Norrish's user avatar
3 votes
1 answer
342 views

Simplest Pattern for matching Identifiers in complex Regular Expressions?

I frequently need a regular expression, that approximately matches identifiers in a given environment. Ignoring the "must not start with a number" requirement, this would mean e.g. [[:alnum:]_]+ ...
kdb's user avatar
  • 1,561
0 votes
1 answer
794 views

Syntax/indentation problems with Vue mode in Emacs 27 nightly

I'm using vue-mode, based on mmm-mode with Emacs 27 nightly from 10/10/2019. Since that Emacs update, I don't get any indentation support in the script section of a Vue file. Try this file with emacs -...
GaryO's user avatar
  • 476
0 votes
1 answer
63 views

How can I fix shift-select-mode with own syntax-table

So I have modified syntax table for moving with C-<left>. (defvar my-wacky-syntax-table (let ((table (make-syntax-table))) (modify-syntax-entry ?\( "w" table) (modify-...
Pfedj's user avatar
  • 308
1 vote
0 answers
56 views

Test if I am inside a paired delimiter

I have been having a problem where I want an up-sexp command that treats paired delimiters like $ in LaTeX-mode just as if they were pairs of balanced parentheses. There are hacks I can use that get ...
Zorgoth's user avatar
  • 810
2 votes
1 answer
55 views

What do the spaces in the NEWENTRY parameter to modify-syntax-entry mean?

I am looking to set up a syntax table for a major mode, and many of the examples, such as lisp-mode-syntax-table have entries like the following: (modify-syntax-entry ?\[ "_ " table) My question ...
JalapenoGremlin's user avatar
3 votes
1 answer
237 views

How to set backslash character "\" to be a word constituent in LaTeX-mode syntax tables

In LaTeX-mode (AUCTeX) buffers, the backslash "\" is treated as an escape character. I'd like it to be treated as word constituent (syntax class "w") instead, but only in LaTeX-mode buffers. The main ...
pglpm's user avatar
  • 265
1 vote
1 answer
110 views

`eval-after-load` gets executed, but syntax-table is missing [duplicate]

In the course of using Emacs I got a dozen of lines that simply make underscore part of a word, and most of them upon byte-compilation are causing warnings like reference to free variable ‘php-mode-...
Hi-Angel's user avatar
  • 534
2 votes
2 answers
80 views

syntax table malfunction

my-test.el contains the following: (defun test01 () "scan for end of entry, trapping error." (interactive) (condition-case nil (setq my-pt (scan-lists (point) 1 0)) (error ...
zugzwang's user avatar
  • 319
1 vote
1 answer
30 views

TeX Mode : making backward-word behaviour take into account Backslashes (\)

In TeX Mode, backward-word (M-b) stops when it encounters a backslash character (\). For example, when the cursor point is after a \begin and I type M-b, the cursor point ends up between the \ (...
ghilesZ's user avatar
  • 121
3 votes
1 answer
129 views

Move point to just before end of a comment

Given that the point is right in front of a comment, how do I move it to the end of the comment, but before the comment end markers? For example: for a C++ // xxx comment, I would like to move the ...
Lindydancer's user avatar
  • 6,095
1 vote
1 answer
99 views

extend/customize Makefile syntax table

I work with a Makefile-like infrastructure that allows having lists as variables and appending values to them. For this, the += operator is used. However, I'm having incorrect highlighting using this ...
Felipe Lema's user avatar
1 vote
2 answers
216 views

how to make emacs think semicolon and brackets are words?

i've came on emacs from Sublime Text, and there ;[]{}()., etc are counts as word, and when you move in your document with Ctrl+Arrow you never skip these characters. I want make emacs recognize all ...
justicecurcian's user avatar
1 vote
0 answers
72 views

how to treat underscore as part of word in auctex? [duplicate]

I'm using auctex, and trying to make underscores count as part of a word. There are numerous answers to this question, and I've tried the following (modify-syntax-entry ?_ "w") (modify-syntax-entry ?...
funklute's user avatar
  • 153
2 votes
2 answers
328 views

Make `thing-at-point` treat dot as a symbol-constituent character?

Is there a way to tweak thing-at-point symbol regexp, so that it ignore dots as separators? Right now foo.bar in my Emacs is recognized as two different symbols, where I wish it was one.
sandric's user avatar
  • 1,241
2 votes
1 answer
202 views

How can I make syntax-propertize skip part of the buffer?

In SPARQL, comments starts with a # and follows to the end of the line. The problem is that URI's, which is a big part of SPARQL, can also contain #, but then they are not the start of a comment. Like ...
ljos's user avatar
  • 131
7 votes
0 answers
107 views

What was syntax-begin-function obsoleted in favour of?

Since Emacs 25.1, syntax-begin-function is obsolete: syntax-begin-function is a variable defined in ‘syntax.el’. Its value is nil This variable is obsolete since 25.1. This variable may be risky ...
Tim Landscheidt's user avatar
1 vote
1 answer
103 views

Complex comment-start (and end) sequence

As far as I understand there is syntax flags only for comment delimiters made up of two characters but if I have comment delimiters of length greater than two characters is it possible to change ...
vonaka's user avatar
  • 171
2 votes
2 answers
396 views

Rx: Skip commented out lines

I'm trying to make an expression that would match the text foo if it's not on a commented out line. ;; foo ; <= not this bar ; <= not this foo ; <= this Now rx.el can exclude ...
yPhil's user avatar
  • 963
1 vote
0 answers
85 views

How can I activate my syntax-table?

I'm using SampleMode and the ModeTutorial to create my own mode. I have a problem with the syntax table. As I understand, // and # start one-line comments like this: (defvar my-mode-syntax-table (...
Markus's user avatar
  • 471
1 vote
1 answer
200 views

How to know what chars are "word constituents" in latex-mode-syntax-table

In some of my query-replecements I need to have only alphabetic characters as word constituents in a local defined syntax-table. My approach is this: (with-syntax-table (let ((my-syntax-table (make-...
Gabriele Nicolardi's user avatar
2 votes
1 answer
319 views

modify syntax entry globally?

I'd like to treat underscores (_) as word characters everywhere (prog-mode, text, comments, etc.). I'm currently doing so in specific modes, like this: (add-hook ruby-mode-hook #'ivan-treat-...
ivan's user avatar
  • 1,928
0 votes
1 answer
66 views

How come newline does not match [[:space:]] in tex-mode and bibtex-mode?

I was debugging some of my elisp code and realized that, in a tex-mode buffer, the newline character at end of line did not match [[:space:]]. In most other textmodes or progmodes, ie, the few I ...
phs's user avatar
  • 1,095
2 votes
1 answer
169 views

specifying a syntax-table for use with TAGS file for etags

It would be convenient if I could arrange for visit-tags-table to open the TAGS file automatically with the correct syntax table for the language of the files being indexed in it. That way regular ...
Dan Grayson's user avatar
1 vote
1 answer
243 views

Get thing-at-point to include periods

I'm using avy to select and insert symbols on screen with the help of thing-at-point. Is there an obvious way to get this to include periods? At the moment if I select self.blah I get just self (or ...
Att Righ's user avatar
  • 725
1 vote
0 answers
57 views

Setting syntax table leads to high CPU load

I want to set - as a word character for all reStructuredText files. In order to do this, I acted according to the wiki and added the following to my .emacs file: (require 'misc) (defvar my-...
Zelphir Kaltstahl's user avatar
2 votes
1 answer
443 views

add a rule to syntax-propertize-rules

I have an issue outlined here that I was able to find a partial solution for. The problem involved changing perl-modes syntax table. One of the commenters pointed me to the function syntax-propertize-...
Prgrm.celeritas's user avatar
3 votes
1 answer
250 views

modify syntax table for strings in perl modes

My company uses a version of Perl where you can define by binary number using something like my $var = 'b010110110; etc. Problem is both perl-mode and cperl-mode interpret ' as the start of the string ...
Prgrm.celeritas's user avatar
0 votes
1 answer
107 views

Locally modify the syntax-table via text-properties

I’m trying to make a particular exclamation point behave like a word constituent (from the point of view of the syntax table), using the syntax-table text property, but I can’t get it to work. In an ...
Guillaume Brunerie's user avatar
2 votes
0 answers
80 views

Emacs Syntax Table Modifications [closed]

I am looking to write my own major mode. The programming language that I need to write it for has //... and /* ... */ style comments. I am having a very hard time getting the syntax tables working ...
Nick's user avatar
  • 21
1 vote
1 answer
59 views

how to change C-mode syntax so that the token @' is ignored?

I edit some files that are mostly C code but include a few special extension tokens. The tokens that give c-mode a problem are @' and @". I essentially want c-mode to ignore these two bigrams. The ...
Jonathan Cano's user avatar