OK, that makes sense.
Now, how does it apply to Named Folders Lite? I can see that I could expose an interface which would allow you to create a new bookmark - something like Plugin.Call("6073FF5D-703E-4C1E-8182-26400240073A", "New", "root", "C:\")
- or delete one Plugin.Call("6073FF5D-703E-4C1E-8182-26400240073A", "Delete", "root")
. Fair enough. It is certainly doable. But, what would be the point? Surely there must be some reason why a script would want to bookmark a directory, but I must admit I don't see it. And, assuming that there is such a reason, why would I want to perform a Plugin.Call
rather than, say, execute pushd Somedirectory[ENTER]cd::name[ENTER]popd[ENTER]
on FAR's command line?
I can see where a scripting interface would be useful for e.g. DirSync3: I could provide a function which would let the caller know which kind of line is the line with the cursor (whether it is a <<== line or a ---> line or maybe it's a description line...) and another function for changing the kind of line to something else. But I have my doubts even there - why spend time on creating a plugin interface when I could spend the same time (perhaps less of it) implementing the required functionality directly within the plugin?
[Note to admin: Perhaps it would be useful to split the posts beginning with Shmuel @ Plugins' API for scripts
into a separate thread.]