How to make forward-word, backward-word, treat underscore as part of a word?
Solution 1:
As huaiyuan mentioned, you ned to modify your syntax table. That said, what he posted modifies the current table...
Each language has a syntax table, e.g. For c++, you could do
(modify-syntax-entry ?_ "w" c++-mode-syntax-table)
I don't know what "your c# mode" uses, but a quick M-x apropos
with a look up of syntax-table
should help you find out...
Solution 2:
You don't necessarily have to modify your syntax table. _
belongs to the syntax class symbol in csharp-mode, so you may use forward-symbol
instead of forward-word
. forward-symbol
is in thingatpt
, which comes with emacs (at least 23).
You can btw quickly look at the syntax table of a mode with C-h s
(describe-syntax).
Solution 3:
(modify-syntax-entry ?_ "w")