http://code.google.com/p/farnet/
(+ FarNet and API documentation)
= 2.2.0 =
----- FarNet 4.2.0 menu items revision -----
See FarNet 4.2.0 History.txt for details. Steps to update your scripts:
*) Replace '$Far.CreateMenuItem()' with 'New-Object FarNet.FarItem' or, even
better, use cmdlet New-FarItem. Also, if you use IMenuItem name in scripts
(unlikely) then replace it with FarItem.
*) Event IMenuItem.OnClick is replaced with a single handler property Click.
You should replace 'add_OnClick({...})' with 'Click = {...}' in scripts.
*) Cmdlet New-FarItem: parameter -OnClick is renamed into -Click.
----- PowerShellFar user menu revision -----
*) Removed $Psf.UserMenu and related code everywhere. User menu items (actions)
are now added by $Psf.Action(), see API help and Profile-.ps1.
*) Removed $Psf.Settings.PluginUserCommand ("user command" or "user code"). PSF
provides enough ways to do the same without this special support. You may
delete the value Plugins\PowerShellFar\PluginUserCommand in the registry.
*) Script UserCode-.ps1 (demo for removed PluginUserCommand) is renamed into
Menu-More-.ps1 and Profile-.ps1 adds the action "More..." that calls it.
----- PowerShellFar background jobs revision -----
*) In couple of words: all jobs (included into the list or not) are started
only by the new cmdlet Start-FarJob.
*) 'Start-FarJob -Pipeline' gets a started job for direct reading (instead of
removed class Invoker). Examples: Test-Job-.ps1, Search-Regex-.ps1
*) See API help and test and demo scripts: Test-Job.ps1, Job-RemoveItem-.ps1.
Note that Robocopy-.ps1 was removed, it seems to be better to run Robocopy
for massive operations outside of Far, not as a job inside.
----- Descriptions support -----
*) New script Set-SynopsisDescription-.ps1: useful for keeping descriptions in
sync with script synopses (as it is in Bench). Read comments, use carefully.
*) Fixed Description cache issue on using both Edit-Descript-.ps1 (PSF, editor)
and [CtrlZ] (native, input box) description editors.
*) Theoretically Description code is thread safe now, so that jobs may use
FarDescription properties safely.
----- Other features/changes -----
*) Panel Columns support FormatString (just like Format-Table), e.g. this
command makes a column 'Length' with width 15 and right aligned numbers with
thousand separators (e.g. 3,230,649)
>: Get-ChildItem | Out-FarPanel Name, @{ e='Length'; f='{0,15:n0}'; w=15 }
*) New cmdlets Find-FarFile, Get-FarFile (mostly to reduce typing on testing,
but they can be used for real jobs too).
*) $Psf.Providers is now settable, see how Profile-.ps1 uses this. It seems to
be easier than it was before. Old way should work too.
*) AnyPanel: renamed event MenuCreated -> MenuCreating (more logically correct)
*) Editor console:
-- atomic undo of commands output
-- greatly improved performance of output to the editor (faster than console?)