3.2.5 Editing SINGULAR input files with Emacs
Since SINGULAR's programming language is similar to C, you
should use the Emacs C/C++-mode to edit SINGULAR input files and
SINGULAR libraries. Among others, this Emacs mode provides
automatic indentation, line-breaking and keyword highlighting.
When running ESingular , the C/C++-mode is automatically turned on
whenever a file with the suffix .sing , or .lib is loaded.
For Emacs sessions which were not started by ESingular , you
should add the following to your .emacs file:
| ;; turn on c++-mode for files ending in ".sing" and ".lib"
(setq auto-mode-alist (cons '("\\.sing\\'" . c++-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.lib\\'" . c++-mode) auto-mode-alist))
;; turn-on fontification for c++-mode
(add-hook 'c++-mode-hook
(function (lambda () (font-lock-mode 1))))
;; turn on aut-new line and hungry-delete
(add-hook 'c++-mode-hook
(function (lambda () (c-toggle-auto-hungry-state 1))))
;; a handy function for customization
(defun customize-face-at-point ()
"Customize face which point is at."
(interactive)
(let ((face (get-text-property (point) 'face)))
(if face
(customize-face face)
(message "No face defined at point"))))
|
Notice that you can change the default settings for source-code
highlighting (colors, fonts, etc.) by customizing the respective faces
using the Customize feature of Emacs. For doing this, you might
find handy the above given function customize-face-at-point ,
which lets you customize the face of the current position of point (this
function is automatically defined if you run ESingular ).
|