[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pan-users] Re: shortkey configuration
From: |
Duncan |
Subject: |
[Pan-users] Re: shortkey configuration |
Date: |
Fri, 25 Jul 2008 15:46:36 +0000 (UTC) |
User-agent: |
Pan/0.132 (Waxed in Black) |
Christian Buhtz <address@hidden> posted
address@hidden, excerpted below, on Fri, 25 Jul 2008 09:13:47
+0000:
> I remember some years ago I was able to configure my own keyboard
> shortcuts for some menu-entries in pan.
>
> But this time I found no option for that.
There's two ways to do it.
One is interactively, by hovering your mouse over a particular menu
action and hitting the combo you want to use (or delete to delete an
existing combo). This has several disadvantages including that the gtkrc
config file must be setup to allow menu hotkey editing (unfortunately
I've forgotten the magic entry, but check the list archive as I've
answered the question several times over the years) and the fact that
some combos can't be set this way (for example, any existing menu accel
key, since it will activate that action rather than set the hotkey for
the action you intended).
The other should work in any case, but is far more manual. Edit the
accels.txt dump-file directly (with pan closed), and pan will pickup the
edits next time it starts. Note that this dump-file is just that, an
unsorted dump, that pan rewrites every time you quit pan. Thus, if you
wish to organize it in some way, say sort the entries, copy the file to
something else to organize so it won't be overwritten, then back over the
dump-file (with pan closed) every time you make a change, so pan picks it
up on start. The format's pretty simple, with a semicolon (;) beginning
a line indicating a comment. Thus, the default dump has all the default
entries, both empty and with accels, commented out. To change anything,
you uncomment the line as well as make the necessary change to the
configured accel.
Below my sig I've included the one I use, with a scheme such that
g=group, a=article, t=thread, h=headers, systematized such that just the
letter means "next" (a=next article, for instance), shift-letter =
previous (shift-a=previous-article, for example), alt-letter = next-
unread, etc. Also, nearly all the dialogs are triple-modifier-letter,
ctrl-alt-shift-g for group prefs, cas-t for task manager, cas-l for log,
cas-p for posting profiles, cas-n for newsservers, etc. This is somewhat
different from the defaults, but the scheme makes better sense to me, and
where I didn't need to change them, many of the defaults remain
(f=followup, for instance, is effectively hard-wired into my brain after
years of pan-usage -- I even set my mail client, kmail, to use the same,
instead of its default f=forward).
The sort order I used is the pan menu order, with (commented out)
deliniators between menus. At the end, I include a (commented out)
used accel table, so I can track what's free to assign if I want and
what's already taken. If you use it and are reading this list with pan
as I do (thru gmane.org's list2news service), ensure wrap is turned off
so the lines lineup correctly before trying to copy it.
Even if you don't like my scheme, you may well find it easier to start
with my file than to sort the raw dump the first time. OTOH, if you are
only doing a single change or two, it's probably simpler to just use your
text editor's find function on the raw dump file, make your changes
without worrying about the order, and call it good. I'm much to much of
a perfectionist control freak when it comes to my computer, tho, so I
wasn't satisfied until I had a scheme that made sense, at least to me.
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
; pan GtkAccelMap rc-file -*- scheme -*-
; this file is an automated accelerator map dump
;###############################################################################
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/file-menu" "")
; (gtk_accel_path "<Actions>/Actions/import-tasks" "<Control>o")
; (gtk_accel_path "<Actions>/Actions/cancel-last-task" "<Control>Delete")
; (gtk_accel_path "<Actions>/Actions/work-online" "l")
(gtk_accel_path "<Actions>/Actions/show-task-window" "<Control><Alt><Shift>t")
(gtk_accel_path "<Actions>/Actions/show-log-dialog" "<Control><Alt><Shift>l")
; (gtk_accel_path "<Actions>/Actions/quit" "<Control>q")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/edit-menu" "")
(gtk_accel_path "<Actions>/Actions/select-all-articles" "<Control><Alt>a")
(gtk_accel_path "<Actions>/Actions/add-subthreads-to-selection"
"<Control><Shift>t")
(gtk_accel_path "<Actions>/Actions/add-threads-to-selection" "<Control>t")
(gtk_accel_path "<Actions>/Actions/add-similar-articles-to-selection" "")
(gtk_accel_path "<Actions>/Actions/unselect-all-articles"
"<Shift><Alt><Control>a")
(gtk_accel_path "<Actions>/Actions/select-article-body" "<Control>a")
(gtk_accel_path "<Actions>/Actions/show-servers-dialog"
"<Control><Alt><Shift>n")
(gtk_accel_path "<Actions>/Actions/show-profiles-dialog"
"<Control><Alt><Shift>p")
(gtk_accel_path "<Actions>/Actions/show-preferences-dialog" "<Control>p")
(gtk_accel_path "<Actions>/Actions/show-group-preferences-dialog"
"<Control><Alt><Shift>g")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/view-menu" "")
; (gtk_accel_path "<Actions>/Actions/show-toolbar" "")
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/view-layout-menu" "")
; (gtk_accel_path "<Actions>/Actions/tabbed-layout" "z")
; (gtk_accel_path "<Actions>/Actions/jump-to-group-tab" "1")
; (gtk_accel_path "<Actions>/Actions/jump-to-header-tab" "2")
; (gtk_accel_path "<Actions>/Actions/jump-to-body-tab" "3")
; (gtk_accel_path "<Actions>/Actions/show-group-pane" "<Control>1")
; (gtk_accel_path "<Actions>/Actions/show-header-pane" "<Control>2")
; (gtk_accel_path "<Actions>/Actions/show-body-pane" "<Control>3")
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/view-group-pane-menu" "")
; (gtk_accel_path "<Actions>/Actions/shorten-group-names" "b")
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/view-header-pane-menu" "")
(gtk_accel_path "<Actions>/Actions/thread-headers" "<Control><Alt>t")
; (gtk_accel_path "<Actions>/Actions/show-matching-articles" "")
; (gtk_accel_path "<Actions>/Actions/show-matching-threads" "")
; (gtk_accel_path "<Actions>/Actions/show-matching-subthreads" "")
(gtk_accel_path "<Actions>/Actions/match-only-unread-articles" "r")
; (gtk_accel_path "<Actions>/Actions/match-only-cached-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-only-binary-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-only-my-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-watched-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-high-scoring-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-medium-scoring-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-normal-scoring-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-low-scoring-articles" "")
; (gtk_accel_path "<Actions>/Actions/match-ignored-articles" "")
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/view-body-pane-menu" "")
; (gtk_accel_path "<Actions>/Actions/wrap-article-body" "w")
; (gtk_accel_path "<Actions>/Actions/mute-quoted-text" "q")
; (gtk_accel_path "<Actions>/Actions/show-all-headers" "h")
(gtk_accel_path "<Actions>/Actions/rot13-selected-text" "")
; (gtk_accel_path "<Actions>/Actions/monospace-font-enabled" "c")
; (gtk_accel_path "<Actions>/Actions/show-smilies-as-graphics" "")
; (gtk_accel_path "<Actions>/Actions/show-text-markup" "")
; (gtk_accel_path "<Actions>/Actions/size-pictures-to-fit" "")
; (gtk_accel_path "<Actions>/Actions/smooth-scrolling" "")
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/character-encoding-menu" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-4" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-13" "")
; (gtk_accel_path "<Actions>/Actions/charset-windows-1257" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-2" "")
; (gtk_accel_path "<Actions>/Actions/charset-windows-1250" "")
; (gtk_accel_path "<Actions>/Actions/charset-gb2312" "")
; (gtk_accel_path "<Actions>/Actions/charset-big5" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-5" "")
; (gtk_accel_path "<Actions>/Actions/charset-windows-1251" "")
; (gtk_accel_path "<Actions>/Actions/charset-KOI8-R" "")
; (gtk_accel_path "<Actions>/Actions/charset-KOI8-U" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-7" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-2022-jp" "")
; (gtk_accel_path "<Actions>/Actions/charset-euc-kr" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-9" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-1" "")
; (gtk_accel_path "<Actions>/Actions/charset-ISO-8859-15" "")
; (gtk_accel_path "<Actions>/Actions/charset-windows-1252" "")
; (gtk_accel_path "<Actions>/Actions/charset-UTF-8" "")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/go-menu" "")
; (gtk_accel_path "<Actions>/Actions/read-more" "space")
; (gtk_accel_path "<Actions>/Actions/read-less" "BackSpace")
(gtk_accel_path "<Actions>/Actions/read-next-unread-group" "<Alt>g")
(gtk_accel_path "<Actions>/Actions/read-next-group" "g")
(gtk_accel_path "<Actions>/Actions/read-next-unread-article" "<Alt>a")
(gtk_accel_path "<Actions>/Actions/read-next-article" "a")
(gtk_accel_path "<Actions>/Actions/read-next-watched-article" "")
(gtk_accel_path "<Actions>/Actions/read-previous-article" "<Shift>a")
(gtk_accel_path "<Actions>/Actions/read-parent-article" "<Alt><Shift>a")
(gtk_accel_path "<Actions>/Actions/read-next-unread-thread" "<Alt>t")
(gtk_accel_path "<Actions>/Actions/read-next-thread" "t")
(gtk_accel_path "<Actions>/Actions/read-previous-thread" "<Shift>t")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/group-actions-menu" "")
; (gtk_accel_path "<Actions>/Actions/read-selected-group" "")
(gtk_accel_path "<Actions>/Actions/mark-groups-read" "")
; (gtk_accel_path "<Actions>/Actions/download-headers" "")
(gtk_accel_path "<Actions>/Actions/get-new-headers-in-selected-groups"
"<Alt><Control>h")
(gtk_accel_path "<Actions>/Actions/get-new-headers-in-subscribed-groups"
"<Control>h")
; (gtk_accel_path "<Actions>/Actions/subscribe" "")
; (gtk_accel_path "<Actions>/Actions/unsubscribe" "")
; (gtk_accel_path "<Actions>/Actions/refresh-group-list" "")
(gtk_accel_path "<Actions>/Actions/delete-groups-articles" "")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/article-actions-menu" "")
; (gtk_accel_path "<Actions>/Actions/save-articles" "<Shift>s")
; (gtk_accel_path "<Actions>/Actions/read-selected-article" "")
(gtk_accel_path "<Actions>/Actions/download-selected-article" "d")
; (gtk_accel_path "<Actions>/Actions/mark-article-read" "m")
(gtk_accel_path "<Actions>/Actions/mark-article-unread" "<Shift>m")
(gtk_accel_path "<Actions>/Actions/view-article-score" "s")
(gtk_accel_path "<Actions>/Actions/add-article-score" "<Control>s")
; (gtk_accel_path "<Actions>/Actions/watch-thread" "")
; (gtk_accel_path "<Actions>/Actions/ignore-thread" "")
; (gtk_accel_path "<Actions>/Actions/plonk" "")
(gtk_accel_path "<Actions>/Actions/print" "")
; (gtk_accel_path "<Actions>/Actions/delete-article" "Delete")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/posting-actions-menu" "")
; (gtk_accel_path "<Actions>/Actions/post" "p")
; (gtk_accel_path "<Actions>/Actions/followup" "f")
(gtk_accel_path "<Actions>/Actions/reply-to" "")
; (gtk_accel_path "<Actions>/Actions/supersede-article" "")
; (gtk_accel_path "<Actions>/Actions/cancel-article" "")
;###############################################################################
;###############################################################################
; (gtk_accel_path "<Actions>/Actions/help-menu" "")
; (gtk_accel_path "<Actions>/Actions/pan-web-page" "")
; (gtk_accel_path "<Actions>/Actions/tip-jar" "")
; (gtk_accel_path "<Actions>/Actions/bug-report" "")
; (gtk_accel_path "<Actions>/Actions/about-pan" "")
;###############################################################################
;###############################################################################
;###############################################################################
; ********* Used Accel table *********
; Char Pln Ctl Shf CtlShf Alt CtlAlt AltShf CtlAltSh
; a a c-a s-a a-a ca-a as-a cas-a
; b b
; c c
; d d
; e
; f f
; g g a-g cas-g
; h h c-h ca-h
; i
; j
; k
; l l cas-l
; m m s-m
; n cas-n
; o c-o
; p p c-p cas-p
; q q c-q
; r r
; s s c-s s-s
; t t c-t s-t cs-t a-t ca-t cas-t
; u u
; v v
; w w
; x
; y
; z z
; backtick doesn't work
; 1 1 c-1
; 2 2 c-2
; 3 3 c-3
; 4
; 5
; 6
; 7
; 8
; 9
; 0
; -
; =
; home home
; end end
; pgup pgup
; pgdn pgdn
; ins
; del del c-del
; spc spc
; bs bs
; tab tab
; cr cr
; esc esc
; f1
; f2
; f3
; f4
; f5
; f6
; f7
; f8
; f9
; f10
; f11
; f12
; [
; ]
; \
; ;
; '
; ,
; .
; /