The Book of Words (2.1)
FinderPop is a Universal Preference pane that extends OS X's contextual menus using a FinderPop Items folder much as the Apple Menu Items folder used to do for the Apple menu. It has other features too:
The Basics
INSTALLATION
If the System Preferences application is running, quit it.
Strange things can happen otherwise.
Double-click the FinderPop.prefpane icon. System Preferences will
open and ask if you want to install FinderPop for all users or just you.
Choose, and MacOS X will install the Preference Pane.
If you have an Intel Mac or you're running 10.5 or later, FinderPop will ask you for the admin password in order to set certain permissions on some FinderPop files. This is only done once at installation time.
USAGE
Open the FinderPop preference pane. Click on the Show
FinderPop Items Folder button in the Items sub-panel.
Add aliases to your favourite applications, folders, documents, and whatnots to that folder.
Now, every time you control-click, you'll get a few more options...
Extending the OtherMenu convention somewhat, any
folder -- or alias to one -- whose name ends in '-!!X
'
(minus-pling-pling-capital-ecks) will not be expanded (i.e., there
will be no submenu hanging off it.) The name displayed in the menu
will not have the '-!!X
' suffix, so the FinderPop menu is aesthetically
pleasing (even if, like so much else, the underlying organisation isn't.)
If the folder's name ends in '-!!x
'
(minus-pling-pling-lowercase-ecks) then, in addition to not being
expanded, no folder icon will appear. Back in the days when I was
receptive to all sorts of mad ideas for FinderPop, I put that no-icon
thing in for someone who claimed that FinderPop was "fundamentally
flawed" without it.
Any item ending in 'mbar!!!!
' will only appear when you
click a blank portion of the menubar.
Any item ending in 'fsel!!!!
' will only appear when you
have control-clicked an item (ie., there is a file or folder selected).
We freely admit that that the user interface for this really is fundamentally flawed, but until we have the time to improve this, I'm afraid we're stuck with it. Hey, you only have to do it once!
The FinderPop Preference pane's options should be fairly self-explanatory. :-) Help tags are available on most items (just hover the mouse over the item to see the help text.)
Invoking FinderPop
Control-click or right-click somewhere - this brings up a
Contextual Menu as per normal; FinderPop attaches itself onto this menu
by adding the contents of the FinderPop Items folder, and optionally
adding the Processes and Desktop submenus. You can choose whether
the contents of the FinderPop Items folder are inlined directly into
the contextual menu, or whether they appear in a FinderPop submenu.
If you have the Caps Lock key pressed when the main FinderPop
menu pops up, the state of "Inline FinderPop Items into Main Contextual Menu"
is toggled. Remember to turn the Caps Lock key back off!
If you have enabled "Control-free Contextual Menu Popup In the Finder" (Options panel), you can click and hold in a Finder Window or the desktop and a contextual menu will pop up on whatever it is you clicked on. You can also arrange to have FinderPop pop up a Contents menu if you click-and-hold on a Folder. Command-clicking-and-holding on the whitespace inside a Finder window will also pop up a Contents menu, as of course will Command-Control-clicking on either the whitespace or a folder. |
Command-clicking the menubar will get you a Processes Menu.
Holding down the Control key too will include the normally invisible background processes. From here you can switch to any process, or quit them by pressing Control-Option-Command (the cursor will change to ), and clicking on the victim process in the menu. If the app doesn't respond to the 'Quit' AppleEvent, you can really kill it by holding down the Shift key in addition to Control-Option-Command (though be warned - this blows the process away without saving opened files, etc.) Running apps that are hidden (via Command-H) appear in FinderPop's Processes menu with their icons dimmed. Note that the other FinderPop menu items (Desktop submenu etc.) are still available. |
Shift-clicking the menubar will get you a Desktop Menu listing the mounted volumes (disks) plus the contents of the Desktop Folder. (If the Control key is pressed, only the disks will be shown. I'm sparing you the 150+ items on my desktop here - and if you think that's bad, you should see my real desk! I am a firm believer in the First Available Surface filing system. |
Navigating the FinderPop Menus
As usual with menus in OS X, typing a character will select the first menu item
beginning with the character typed, which can save quite a bit of mousing.
Additionally, by pressing various modifier keys (Control, Command, Option and Shift)
while traversing FinderPop menus, you can modify FinderPop's actions. The
list below outlines the facilities available if there is no Finder
selection while you're traversing any FinderPop-related submenu. You
should notice the mouse pointer changing as indicated. Different text appears depending on whether the mouse is
currently over a plain file, a directory, an app, a running process, or a
disk (volume.) This can be quite handy to see the creator and type of an
unknown item: just Command-Control-click a blank spot in the Finder
window in which the item lives, and from the ensuing FinderPop
Contents popup menu, press Command and Option and mouse
down to your item. Other info, such as file sizes and permissions, also appears there.
Displays a preview-help-tag window for the currently selected
FinderPop menu like the two examples below.
This behaves like the Get Info cursor above. Note that it
can take a while for a graphical preview to appear if the file is big or on a slow
disk!
Graphical previews are done for any QuickTime-supported multimedia (JPEGs, PDFs, MOVs etc);
text files are also previewed. MP3 files are scanned for embedded JPEGs.
You can thank a sudden strike by the Iberia ground crew in Barcelona
airport for that one. (It meant my weekend in Amsterdam got canceled so I
spent the time working on this instead.) Shower-o-shaggers...
It displays a little preview of whatever it was you'd selected; plus
some basic info on the file/folder/volume. If the item is a picture or an
MP3 file, various useful bits of info are also presented, as in the example.
If the item is a file, the preview sub-panel will display the first
few lines of the file (if it's a text file), or optionally a hex dump
of the first hundred or so bytes in the file if you option-double-click
the Preview area. If the item is a folder, a
really small representation of its contents will appear there.
(You can't yet select items in that mini-contents-representation.)
This may eventually evolve into a shelf thingy, but at my rate of development...
well, don't hold your breath...
Sorry about the crappy icons, they're the best I could find/cobble together on short notice.
Hey... any graphic artists reading this who'd like their names to appear
in the FinderPop AboutBox? Submissions gratefully received!
If there is a Finder selection, FinderPop automatically changes
the cursor if it's over a menu item representing a
folder while traversing a FinderPop related menu. The cursor will
change to a to signify that the Finder selection will
be copied to whatever directory you select. Note that if you do select
a folder in this case, FinderPop will always ask for confirmation:
(Pressing the initial letter of a button has the same effect as pressing the button,
thus pressing the m key corresponds to a click on the Move button.)
The cursor will revert to the normal arrow cursor if copying would be impossible
(for example, if the destination disk is write-protected, or if you were attempting
to move a folder into one of its offspring.) If you manually
force another cursor by pressing Command/Option/Shift/Control etc., then of
course that forced cursor takes precedence.
All these modifier key chords are good piano practice, if nothing else. Hints & Tips
(or: "You know much that is hidden, O Tim.")
where RR, GG, BB and AA are hex byte values representing the red, green,
blue and alpha components of the info window's background colour.
For example,
gives RGB = {0x5555, 0x6666, 0x7777} and an alpha of 0xFA / 0xFF == 0.980.
The example would cause FinderPop to use 128-pixel icons in its "info-help-tag"
windows the next time an app is patched (these values are loaded once per app.)
Setting the
FAQ me!
FinderPop does not change any of your application or system files.
FinderPop has been tested by a gang of 40+ beta testers
(see the FinderPop Beta Testing
page if you would like to join them.) However, problems could still arise,
such as instability in certain applications, etc.
If you are experiencing problems, simply turning off FinderPop in the Preference
Pane will deactivate it. If you are continually experiencing problems in a
particular application, please tell me about it [
]; you can also tell FinderPop to avoid "patching" that application by adding
it to the the Excludes list in the FinderPop Preference Pane.
Be aware that the OS X Menu Manager appears to do some very time-consuming
processing if you are in a deep hierarchy and press any non-modifier key.
It is not unusual to get a beachball for a few seconds, but don't worry, the
menu manager will eventually come back to life. It appears to be scanning
all menu items for items beginning with the character you pressed.
For this reason, the use of Cmd-Option-Shift modifier keys is preferred
when invoking the various FinderPop features described below.
Note: this bug appears to have been fixed in Leopard!
Shows the chosen menu item (process or FinderPop item) in the
Finder. If you press 'r' (as opposed to pressing Command),
the action is immediate - the Finder displays the item. If you're
pressing Command, then you select the item from FinderPop's
menus as normal - once you've chosen the item, the Finder will display
it.
With regard to the first sentence in this section, if you want to select
a menu item beginning with 'r', type Shift-'R', i.e., capital-'R'.
Command-Option (or 'i') -- Get Info --
Displays an info-help-tag window for the currently selected item in the
FinderPop menu.
If you press i then this has immediate effect - the menu
disappears and the Finder displays the Get Info panel corresponding
to the currently highlighted item. If you're pressing Cmd-Option and
you want to see the Finder Get Info panel, you have to click
to choose an item. Before you click, though, FinderPop displays the
help tag window for the currently highlighted item - and you can move
the mouse to other items; the help tag window will update as appropriate.
Displays a dialig asking if you'd ike to move the chosen FinderPop menu
item to the trash (or "put away" a disk if a disk is selected.)
If you press Delete then this has immediate effect - the menu
disappears and the 'Do you want to move this item to the trash' dialog
appears immediately. If you're pressing Ctrl-Cmd-Option, you have to
select the item by pressing the mouse button before the 'Move to Trash?' dialog
appears.
Note that if the item you chose to trash is an alias, only the alias
will be moved to the trash.
When you're mousing over FinderPop's Processes menu, you can quit
a process by choosing it after pressing delete so the cursor goes into
kill mode. You can also quit background-only apps. (To see background-only apps,
have the Control key pressed when you move the mouse onto the Processes
menu title, or press Control and Command while clicking a blank
portion of the menubar.) Note that running apps that are hidden via (Command-H)
appear in FinderPop's Processes menu with their icons dimmed.
If the Shift key is not pressed, then FinderPop will send a 'quit' AppleEvent
to the process, giving it a chance to quit in an orderly fashion by asking you
if you want to save any modified documents, for example. If Shift is
down, FinderPop will kill the process via _KillProcess
, which basically blows
the process away. Any unsaved work in that process will be lost, so caveat user!
This has immediate effect - the instant you
press 'g', the menu disappears and the item is available for dragging.
From this info-window, you can:
TAB -- Info Window --
(10.4 and later only!)
Pops up a floating info window on whatever you select from the
FinderPop menu, looking like this image.
I'll add more features to this dialog if requested - suggestions welcome.
If you are copying or moving an item to a folder in which there is already an
item with the same name, FinderPop will ask for confirmation of overwriting.
If you choose not to overwrite, the entire copy/move is not done: i.e., nothing
is copied or moved.
• Command-Control-clicking in a Finder window (or the Desktop) will pop
up a Contents menu (i.e., the contents of the folder corresponding to the window.)
This can be very handy because it's sometimes easier to find a particular
item in a sorted FinderPop menu than in a Finder window!
If you command-control-click (or command-click-and-hold) a Finder icon
corresponding to a folder, you'll also get a Contents popup menu.
(There's a checkbox in the FinderPop PrefPane's Options tab which
allows you to choose whether you want a plain Click-and-hold on a folder
to popup a Contents menu or a contextual menu.)
defaults write com.finderpop.finderpop infoBackground -data RRGGBBAA
defaults write com.finderpop.finderpop infoBackground -data 556677FA
helpTagBackground
. A prefs variable
called helpTagForeground
allows you to set the foreground colour
(the alpha portion is ignored.)
Additionally, you can control the size of the icon displayed in FinderPop's
"info-help-tag" by
defaults write com.finderpop.finderpop helpTagIconSize -integer 128
helpTagIconSize
to 0 instructs FinderPop to not
display icons in help tags.
defaults write com.finderpop.finderpop multiClickMaskForContents -integer 3
defaults write com.finderpop.finderpop originalControlFreePopupMethod true
Speaking of which, I used to work for Apple on their gcc compiler team (and before that on their
MPW compilers.) I left in 2002 suffering a classic case of burn-out, and promptly
sold my shares for about $19 each.
They have since split two-for-one and subsequently hit $200 in late 2007!
The good news, however, is that I no longer need an alarm clock - every
morning at 7:30 I wake up screaming! :-)
FinderPop does not patch Mac OS X per se, instead it inserts a small
fragment of code into the memory space of individual Mac OS X applications as
they are being launched. This code fragment adds the various FinderPop features
to contextual menus and clicks-in-unused-menubar-area.
If you wish to completely uninstall FinderPop, open the FinderPop Preference
Pane's Etc tab, and click the Uninstall FinderPop button. If there's
something bad about FinderPop that you don't like, please tell me so I can
try to fix it!
[
]
If you think FinderPop made an application crash, please tell me about it!
Mail me a description of what you did leading up to the crash, and also a copy of the crash log, which can be found in ~/Library/Logs/CrashReporter/application-that-crashed.crash.log
Unfortunately not. I have spent quite a bit of time on this and, eventually, on
the grounds that my sanity was worth more than Unsanity, I gave up.
I may well return to it at some future date. Apologies for the inconvenience...
This can happen because FinderPop is lazy about deciding whether
a folder item should have a submenu. At the time it decides this, it only knows
how many items are in the folder. It doesn't know whether the current user has
permissions to see all the items inside the folder, or if all items inside it are invisible, for example. A future version of FP may fix this.
I think that this is down to the OS X Menu Manager's handling of keystrokes to move the
menu selection (ie, pressing 'a' should take you to the first item in the menu
beginning with 'a' or thereabouts.) If you are browsing a deep hierarchy and
press a key, the Menu Manager appears to do a linear search of all currently
visible items or something; it can take a few seconds before control reverts
to the user. You can work around this bug by using only the modifier key
chords - see above.
Release Notes
defaults write com.finderpop.finderpop immedActionOnKeyPress false
The alternate Cmd/Opt/Ctrl/Shift modifiers method remains unchanged. Also note two new keys:
defaults write com.finderpop.finderpop originalControlFreePopupMethod true
It has to be said, however, that the new method (as used by various other utilities) is definitely better if you're on a laptop. Note that the minimum control-free delay can never be smaller than the mouse double-click time as set in the Keyboard & Mouse prefPane.
gdb
, nm
and otool
.
setgid procmod
. Hence FinderPop for Leopard PowerPC now asks for the admin password on first install (like Intel on both 10.4 and 10.5.)
_ContextualMenuSelect
, so I patch an internal system routine instead. Happily this internal routine is also called from 10.5 Cocoa apps doing their contextual menu selection. However that routine may have other non-contextual uses so I could end up inappropriately adding FinderPop stuff to non-contextual menus! If this happens anywhere, please let me know.
_ContextualMenuSelect
, I have to cons up what "the Finder selection" is. This should be exactly the same as on the 10.4 Finder, but there may be differences. Unlikely though.