home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 21
/
CD_ASCQ_21_040595.iso
/
dos
/
prg
/
c
/
freedos3
/
source
/
emacs16d
/
_keys.min
< prev
next >
Wrap
Text File
|
1991-08-11
|
4KB
|
236 lines
Name:F:bind-to-key
Bind a key to a function. Prompts for a function name and key.
[*]#(Finsist,(arg1),SELF,(
#(Fresolve-name,arg1,(#(Fbind-key,##(temp))))
))
[*]
Name:F:digit-argument
Start parsing meta digits as a numeric argument.
[*]
#(an,C-u arg2arg1)
#(Fargument-do,#(g),arg2arg1)
[*]
Name:F:negative-argument
[*]
#(==,arg1,,(
#(an,C-u -)
#(Fargument-do,#(g),-)
),(
#(an,C-u #(--,0,arg1))
#(Fargument-do,#(g),#(--,0,arg1))
))
[*]
Name:F:prefix-C-c
Parse C-c prefix characters, i.e. C-c.
[*]
#(==,arg1,,(
#(an,C-c )
#(d,C-c #(g)#(an))
##(result)
),(
#(an,C-u arg1 C-c )
#(Fargument-execute,C-c #(g)#(an),arg1)
))[*]
Name:F:prefix-C-x
Parse C-x prefix characters, i.e. C-x.
[*]
#(==,arg1,,(
#(an,C-x )
#(d,C-x #(g)#(an))
##(result)
),(
#(an,C-u arg1 C-x )
#(Fargument-execute,C-x #(g)#(an),arg1)
))[*]
Name:F:prefix-C-x 4
Parse C-x 4 prefix characters, i.e. C-x 4.
[*]
#(==,arg1,,(
#(an,C-x 4 )
#(d,C-x 4 #(g)#(an))
##(result)
),(
#(an,C-u arg1 C-x 4 )
#(Fargument-execute,C-x 4 #(g)#(an),M-x)
))[*]
Name:F:prefix-M-
Parse M- prefix characters, i.e. Escape.
[*]
#(==,arg1,,(
#(an,M-)
#(d,M-#(g)#(an))
##(result)
),(
#(an,C-u arg1 M-)
#(Fargument-execute,M-#(g)#(an),arg1)
))[*]
Name:F:unbind-key
Remove a key binding.
[*]#(an,Enter-key-to-unassign?)
#(es,K.#(Fget-key-with-prefixes))
#(ds,Kmodified)
#(an)
[*]
Name:F:universal-argument
Prompt for a numeric argument. Default to four. If pressed again, multiply
the count by four.
[*]
#(==,arg1,,(
#(an,C-u 4)
#(Fargument-do,#(g),,1)
),(
#(an,C-u #(**,arg1,4))
#(Fargument-do,#(g),,arg1)
))[*]
Name:Fargument-do
Decide if arg1 is another argument character. If not, execute it.
The first line decides if arg1 is a number or else if it is a dash at the
beginning.
[*]#(==,#(g?,1arg1,9,yes,(#(==,arg2arg1,-,yes,no))),yes,(
#(an,C-u arg2arg1)
#(SELF,#(g),arg2arg1)
),(
#(an)
#(==,arg3,,(
#(Fargument-execute,arg1,arg2)
),(
#(Fargument-execute,arg1,#(**,arg3,4))
))
))[*]
Name:Fargument-execute
Decide if a function knows how to deal with an argument. If not, use the
argument as a repeat count.
[*]#(n?,K.arg1,(
#(==,##(go,#(K.arg1))#(rs,#(K.arg1)),( ),(
#(#(K.arg1),arg2)
),(
#(Floop,(#(ds,result,#(#(K.arg1)))),arg2)
##(result)
))
),(
#(Floop,(#(ds,result,#(Fself-insert,arg1))),arg2)
##(result)
))
[*]
Name:Fbind-key
Find the key arg2 to the function arg1. Prompt for arg2 if missing.
RFS: If arg2 is C-g, make sure the user does it on purpose.
[*]#(==,arg2,,(
#(an,Enter key to bind arg1 to?)
#(SELF,arg1,#(Fget-key-with-prefixes)#(an))
),(
#(==,no,#(==,F:ring-the-bell,#(K.arg2),(
#(Fyes-or-no,Are you SURE you want to change arg2 to arg1 ? ,,no)
)
),,(
#(ds,K.arg2,arg1)
#(ds,Kmodified)
))
))
[*]
Name:Fkey2char.KP+
[*]+[*]
Name:Fkey2char.KP-
[*]-[*]
Name:Fkey2char.KP.
[*].[*]
Name:Fkey2char.KP0
[*]0[*]
Name:Fkey2char.KP1
[*]1[*]
Name:Fkey2char.KP2
[*]2[*]
Name:Fkey2char.KP3
[*]3[*]
Name:Fkey2char.KP4
[*]4[*]
Name:Fkey2char.KP5
[*]5[*]
Name:Fkey2char.KP6
[*]6[*]
Name:Fkey2char.KP7
[*]7[*]
Name:Fkey2char.KP8
[*]8[*]
Name:Fkey2char.KP9
[*]9[*]
Name:Flocal-bind-key
Define a local key binding, remembering it for later removal from the key map.
[*]#(Fredefine,arg1,(arg2))
#(ds,local-mode-changes,##(local-mode-changes)(#(Funredefine,arg1)))
[*]
Name:Fvalid-key
Waits for a key to be pressed. If the key isn't bound to F:ring-the-bell
(like C-g is) then return arg1 with is-SELF set to the key. As an alternative
to pure #(g), it allows the coming actions to be interrupted.
It *is* possible to execute arg1 with is-SELF as C-g, if the user explicitly
says so in Fvalid-key.
[*]
#(ds,is-SELF,#(g))
#(==,F:ring-the-bell,#(K.#(is-SELF)),(
#(F:ring-the-bell)
),(
#(==,F:quoted-insert,#(K.#(is-SELF)),(
#(an,Enter control character ? )
#(ds,is-SELF,#(g))
#(an)
))
arg1
))
#(es,is-SELF)
[*]