evil-programmers icon indicating copy to clipboard operation
evil-programmers copied to clipboard

Pygin: I would like to send a list of files to "Temporary Panel" plugin

Open jonisb opened this issue 6 years ago • 1 comments

It seems I would use MacroControl for that but I'm guessing it's not implemented yet?

I assume "far.py" has all of Far API that's implemented?

So is it possible to send a list of files to "Temporary Panel" plugin, right now via Pygin?

jonisb avatar Oct 20 '19 02:10 jonisb

I assume "far.py" has all of Far API that's implemented?

Not yet I'm afraid, only a small subset of it. Basically, everything in plugin.todo is not implemented yet.

This project was started as a demo of the adapters concept in Far, I implemented some of the API to show that everything works, to reveal any issues in the design etc. and planned to (maybe) continue if there's a public demand.

is it possible to send a list of files to "Temporary Panel" plugin, right now via Pygin?

You've touched a long and sad topic - sending files to Temporary Panel is a classic example of "inter-plugin communication", which was one of the main motivators for breaking changes in Far 3, but, as far as I know, is still far from perfection. I'm not aware of any proper ways of doing that (but I haven't been following this topic closely lately, please try asking on the forum, maybe there's one), but some silly workarounds are definitely possible even right now:

# First create the "filenames.temp" with the full names of the files you want to send to TmpPanel
# The implementaiton is left as an exercise to the reader

# Now "send" it:
self.ActivePanel.PanelControl(far.FileControlCommands.SetCmdLine, 0, "tmp:C:\\Path\\To\\filenames.temp")
win32api.keybd_event(0x0d, 0, 0, 0)

alabuzhev avatar Oct 20 '19 08:10 alabuzhev