# ====================================================================== # Key bindings # ====================================================================== # # maps: ################alias alias menu ################attach attachment menu bind attach ' ' select-entry bind attach \Cg exit ################browser directory browser ################compose compose menu ################index message index # bind attach S save-entry bind index P recall-message # 'R'ecall-message move to 'P' [0.46] # bind index L bottom-of-page # overrides 'L'ist-reply bind index R list-reply # 'L'ist-reply moved to 'R' macro index S s=SPAM macro pager S s=SPAM ################pgp pgp & pgp menu {{{ # macro pager \Ck "|pgp -kaf^M" # a comment is valid here # macro pager X "|morepgp^M" # pipe PGP message to a script # }}} ################postpone postponed message recall menu ################generic generic keymap for all of the above {{{ #bind generic "\e<" first-entry # emacs-like bindings for moving to top/bottom #bind generic \e> last-entry #bind generic { top-page #bind generic } bottom-page #bind generic \177 last-entry # }}} ################editor line editor {{{ # The usual DEL vs BS problem: # Explicit binding of Delete (aka CTRL-? or ^?) # to the backspace key does the trick: bind editor <delete> delete-char # bind editor \C? backspace # bind editor \C? delete-char # bind editor \cy eol # make ^Y jump to the end of the line # }}} ################pager text viewer ################ Call abookadd {{{ # macro pager a "C<$TMP_FILE>\n\n!<abookadd.pl>\n" "create an alias from a message sender" macro index a "C$HOME/temp/mutt4abook\n\n!abookadd.pl\n" "create an alias from a message sender" macro pager a "C$HOME/temp/mutt4abook\n\n!abookadd.pl\n" "create an alias from a message sender" # }}} ################ Jumpings {{{ ## Jumping to the next mail that is still unread. ## Even though I use both New and Old mails ## I usually prefer "jump-unread" to "jump-new". ## The TAB key (\t) is convenient for this. ## To allow jumping to the previous unread mail ## I use the comma as a prefix to this command: # bind index \t next-new # bind pager \t next-new bind index \t next-unread bind pager \t next-unread bind index ,\t previous-unread bind pager ,\t previous-unread ## Bindings for Index {{{ # 980626 # Repositioning - Moving the current mail around the screen: # (use bindings a la Vim for moving the current line) bind index zt current-top bind index zz current-middle bind index zb current-bottom # index bindings - nn (newsreader) style bind index < previous-page bind index > next-page # bind index ^ first-message # error with mutt-0.89.1 # bind index $ last-message # error with mutt-0.89.1 # index bindings - elm (mailer) style bind index + next-page bind index - previous-page bind index <pagedown> next-page bind index <pageup> previous-page # bind index <home> first-message # error with mutt-0.89.1 # bind index <end> last-message # error with mutt-0.89.1 # bind index \Cg group-reply # \Cg --> "group-reply" # bind index g first-message # g was "group-reply" # bind index G last-message # error with mutt-0.89.1 bind index \Cb previous-page bind index \Cf next-page # \Cf was 'f'orget-passphrase # bind index \Cv forget-passphrase # \Cv --> 'f'orget-passphrase # forget-passphrase is not known any more? Hmm.. macro index <esc>\Cf forget-passphrase # Macros that jump to next/previous mail with a given flag. # Here I use vi-like commands to jump forward and backward, # ie ',' for forward and ';' for backward. # macro index ,f /~F\n # macro index ;f <esc>?~F\n ## Bindings for Index }}} ## Bindings for pager {{{ ## scrolling: {{{ bind pager \Cu half-up bind pager \Cd half-down bind pager \Cm next-line bind pager \Ce next-line bind pager \Cy previous-line bind pager + next-line bind pager - previous-line bind pager ' ' next-page bind pager \Cf next-page bind pager \Cn next-page bind pager - previous-page bind pager \Cb previous-page # was "browse-url" # bind pager ,B browse-url # compensate for \Cb bind pager \Cn half-down bind pager \Cp half-up # setting the current line to the top or bottom line: #bind pager t top bind pager ^ top bind pager g top bind pager G bottom bind pager $ bottom # bind pager backspace previous-line # bind pager delete previous-line # yields error! bind pager k previous-line bind pager j next-line # }}} ## jumping to other messages: {{{ bind pager n next-undeleted ## bind pager N bind pager p previous-undeleted bind pager ,j next-undeleted bind pager ,k previous-undeleted bind pager b previous-page bind pager f next-page # }}} ## Bindings for pager }}} ## Jumpings }}} ## ====================== ## Bindings for index {{{ ## ====================== # 980626 # Show the version number with 'V': bind index V show-version bind pager V show-version # macro index V "!mutt -v | less" # index bindings - nn (newsreader) style bind index \Cx sync-mailbox # \Cx ->"sync-mailbox" # not necesary any more: macro index "+so" ":source " # Quickly change to folders: macro index ",cr" "c=received" "Change to the =received folder" macro index ",cv" "cimap://localhost/vim/" "Change to the vim folder" macro index ",cq" "cimap://localhost/sasquad/" "Change to the sasquad folder" macro index ",cs" "cimap://localhost/scape/" "Change to the scape folder" macro index ",cp" "cimap://localhost/pcgen/" "Change to the pcgen folder" macro index ",cf" "cimap://localhost/frjv/" "Change to the frjv folder" # calling the webbrowser through use of urlview: # macro index \cb |urlview\n # simulate the old browse-url function macro index ,\Cb |urlview\n "Extract a URL, and queue for later download" macro pager ,\Cb |urlview\n "Extract a URL, and queue for later download" # the config file of urlview is ~/.urlview and has the line: # REGEXP ((((ht|f)tp)|mailto):(//)?[^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">] # COMMAND=screen lynx "%s" #macro index \# /bug^M # search for bugs #macro index "\"" ":set realname=\"real hairy macro\"^M:set ?realname^M" # and a comment to boot! #macro index f1 :woohoo! # Macro: # Stian Sletner <sletner@powertech.no> wished that # when you view a message with all headers that # a forward of this message should therefore include # *all* headers. We can do this with a macro: # # We will use ",h" to view the mail (avoids conflict # with the usual 'h' to view a message with all headers). # This is what happens: Show the message with *all* headers, # and show the current status of "forward_weed" for checking. # A "forward" should now include *all* headers. :-) macro index ,h ":unset forward_weed\rh:set ?fcc_attach\r" # Homework: Reset the value "forward_weed" on exit from the pager. ;-) # }}} ## =========================== ## Bindings a la PINE {{{ ## =========================== ## See file "Pine.rc" of the distribution for further bindings! # Make 'I' go to the "Index" # ie to the mailbox: macro index I "c!\n" macro pager I "c!\n" # }}} ## =========================== ## Bindings for pager {{{ ## =========================== # ROT13 - rotate alphabet by 13 characters # macro pager D |rot13 # rot13 by Sébastien Michel ? macro pager X "<enter-command>\ set display_filter = \"tr a-zA-Z n-za-mN-ZA-M\"<enter>\ <exit><display-message>\ " "rot13" macro pager <esc>X "\ <enter-command>unset display_filter<enter>\ <exit><display-message>\ " "re-display message" # 991213: # Z = ZOOM macro pager z ":set pager_index_lines=10\n" macro pager Z ":set pager_index_lines=0\n" # searching bind pager / search # dealing with messages, such as printing and replying: bind pager P print-message bind pager R list-reply # bind pager L list-reply # clashes with "bottom-page" ## Adding a prefix to index mail commands: ## I do this so I can use the letters for pager commands. ## This prevents accindental invocation of the editor. ## I do not use ESC as the prefix key as there needs to be ## a pause between ESC and the following key - annoying. ## I once used the backslash key - but \n, \r, and \t ## are now used for newline, return, and tab. *sigh* bind pager ,b bounce-message bind pager ,f forward-message bind pager ,g group-reply bind pager ,m mail bind pager ,L list-reply bind pager ,n reply bind pager ,r reply bind pager ,a reply # 'a' is for "answer" bind pager m noop bind pager L noop bind pager r noop bind pager : enter-command bind pager t tag-message # }}} ## =========================== # Idea from Sébastien Michel -> toggle and display # macro index h ':toggle edit_headers<enter>:set ?edit_headers<enter>' # macro pager h ':toggle edit_headers<enter>:set ?edit_headers<enter>' # ====================================================================== # vim600: set fdm=marker:
Generated by vim2html.pl 3.6? on Fri Jul 16 02:55:58 2004