mirror of
https://github.com/PDP-10/its.git
synced 2026-02-16 04:43:01 +00:00
Emacs MAXIMA library - Macsyma mode.
This commit is contained in:
79
src/emacs1/maxima.26
Executable file
79
src/emacs1/maxima.26
Executable file
@@ -0,0 +1,79 @@
|
||||
!* -*- TECO -*- Library created and maintained by KMP@MC !
|
||||
|
||||
!~Filename~:! !EMACS macros for editting Macsyma code!
|
||||
MAXIMA
|
||||
|
||||
!Maxima Mode:! !S Setup for Macsyma editting
|
||||
|
||||
C-M-A Go to head of Macsyma definition
|
||||
C-M-E Go to end of Macsyma definition
|
||||
|
||||
Rubout deletes backwards changing tabs into spaces
|
||||
Ctrl-Rubout deletes backwards normally
|
||||
Tab indents like lisp tab
|
||||
|
||||
Semicolon ends a Macsyma expression, typing a <CR>
|
||||
Dollarsign ends a Macsyma expression, typing a <CR>
|
||||
:= types a <CR> and indents appropriately for head of a
|
||||
Macsyma definition.!
|
||||
|
||||
|
||||
M(M.M &_Init_Buffer_Locals)
|
||||
M.Q..D !* Make a local called ..D !
|
||||
0FO..QMaxima_..DF"N U..D' !* Dont copy ..D if dont have to !
|
||||
"#W
|
||||
40M.LComment Column !* Set comment column !
|
||||
:i..D ..D !* Copy ..D !
|
||||
Q..D M.V Maxima_..D !* Set up to do this faster next time.!
|
||||
5*?:f..DAA !* Make ? alphabetic !
|
||||
5*;:f..D__ !* Make semicolon just a break char!
|
||||
5*\:f..D_/ !* Make backslash like slash !
|
||||
5*/:f..D__ !* Make slash just a break char !
|
||||
5*.:f..D__ !* Make period just a break char !
|
||||
!""! 5*':f..DA' !* Make quote like lisp quote !
|
||||
5*":f..D_| !'! !* Make doublequote like vertical bar !
|
||||
5*|:f..D__ !* Make vertical bar just a delimiter !
|
||||
5*}:f..D_) !* Make braces work like parens !
|
||||
5*{:f..D_( !* Make braces work like parens !
|
||||
5*]:f..D_) !* Make brackets work like parens !
|
||||
5*[:f..D_(' !* Make brackets work like parens !
|
||||
:I* /*_ M.L Comment_Begin !* How to start comment !
|
||||
:I* /* M.L Comment_Start !* How to recognize comment start !
|
||||
:I* _*/ M.L Comment_End !* How to end comment !
|
||||
M.M ^R_Indent_For_LispM.QI !* Make Tab indent for lisp !
|
||||
Q¨Q.Í.Q›)M.Q.› !* Ctrl-Rubout <-> Rubout interchange !
|
||||
M.M ^R_Macsyma_Electric_;M.Q;
|
||||
M.M ^R_Macsyma_Electric_;M.Q$
|
||||
M.M ^R_Macsyma_Electric_=M.Q=
|
||||
M.M ^R_Beginning_of_Macsyma_DefinitionM.Q...A
|
||||
M.M ^R_End_of_Macsyma_DefinitionM.Q...E
|
||||
0fo..Q Display_Matching_Paren"e !* If not already enabled, ... !
|
||||
2 M.QDisplay_Matching_Paren'!* Make local paren matching happen !
|
||||
0 M.QPermit_UnMatched_Paren !* Disallow unmatched parens !
|
||||
1M(M.M&_Set_Mode_Line)Maxima !* Set mode line !
|
||||
|
||||
!^R Beginning of Macsyma Definition:! !^R Jump to head of := expression !
|
||||
|
||||
-:s
|
||||
:"lj' "#fkcr' !* Search back for end of previous !
|
||||
0 !* Return !
|
||||
|
||||
|
||||
!^R End of Macsyma Definition:! !^R Jump to end of := expression !
|
||||
|
||||
:s\$\;"l l'"#zj' !* Search forward for a $ or ; !
|
||||
0' !* Return !
|
||||
|
||||
|
||||
!^R Macsyma Electric =:! !^R Electric = for Macsyma mode!
|
||||
|
||||
ff"e -1,0a-:"e .(i=
|
||||
_____),.'' !* If a :=, type the return and indent !
|
||||
f@m(qA) !* Insert and return !
|
||||
|
||||
|
||||
!^R Macsyma Electric ;:! !^R Electric ;, etc for Macsyma mode!
|
||||
|
||||
ff"e .(q..0i i
|
||||
),.'' !* Insert char + carriage return; return!
|
||||
f@m(qA) !* Insert nomally and return !
|
||||
Reference in New Issue
Block a user