Próbuję utworzyć znaki podkreślenia traktowane jako część słowa dla funkcji forward/backward-word
zgodnie z opisem here i here. Dokładam starań, aby to działało w trybie nxhtml
, ale naprawdę chciałbym, aby działało tak w przypadku wszystkich trybów.Podkreślenie jako część wyrazu dla nieprzeczytanego wyrazu
Zmodyfikowałem mój plik site-start.el
na wiele różnych sposobów, ale bez skutku. Ale jeśli ręcznie wykonam polecenie M-x modify-syntax-table
w buforze, działa dobrze. Po prostu nie mogę uznać tego za domyślne zachowanie.
Oto, co starałem oddanie w moim pliku site-start.el
:
;; 1
;; thought this would apply it to all modes - no error, but did not work
(modify-syntax-entry ?_ "w")
;; 2
;; thought this would automatically set it on a mode change - no error, but did not work
(defun change-major-mode-hook()
(modify-syntax-entry ?_ "w"))
;; 3
;; thought this would apply it to all modes - no error, but did not work
(modify-syntax-entry ?_ "w")
;; 4
;; this produced a symbol's value as variable is void error
(modify-syntax-entry ?_ "w" nxhtml-mode-syntax-table)
Czego mi brakuje?
Docstring 'modify-syntax-entry' mówi" Składnia jest zmieniana tylko dla tabeli SYNTAX-TABLE, która domyślnie przyjmuje tabelę składni bieżącego bufora ". Nic nie wskazuje na to, że możesz globalnie zmienić wszystkie tabele składni, pomijając ten parametr. – phils