SXEmacs provides specialized support for editing source files for many different programming languages. For example it is possible to
The commands available for words, sentences, and paragraphs are useful in editing code even though their canonical application is for editing human language text. Most symbols contain words (see Words); sentences can be found in strings and comments (see Sentences). Paragraphs per se are not present in code, but the paragraph commands are useful anyway, because Lisp mode and C mode define paragraphs to begin and end at blank lines (see Paragraphs). Judicious use of blank lines to make the program clearer also provides interesting chunks of text for the paragraph commands to work on.
The selective display feature is useful for looking at the overall structure of a function (see Selective Display). This feature causes only the lines that are indented less than a specified amount to appear on the screen.
• Program Modes: | Major modes for editing programs. | |
• Lists: | Expressions with balanced parentheses. There are editing commands to operate on them. | |
• Defuns: | Each program is made up of separate functions. There are editing commands to operate on them. | |
• Grinding: | Adjusting indentation to show the nesting. | |
• Matching: | Insertion of a close-delimiter flashes matching open. | |
• Comments: | Inserting, filling and aligning comments. | |
• Balanced Editing: | Inserting two matching parentheses at once, etc. | |
• Lisp Completion: | Completion on symbol names in Lisp code. | |
• Documentation: | Getting documentation of functions you plan to call. | |
• Change Log: | Maintaining a change history for your program. | |
• Tags: | Go direct to any function in your program in one command. Tags remembers which file it is in. | |
• CC Mode: | Modes for C, C++, Java and similar languages | |
• Fortran: | Fortran mode and its special features. | |
• Asm Mode: | Asm mode and its special features. |