Skip to content

eraserhd/kak-plumb

Repository files navigation

kak-plumb

Kakoune integration with the plan9port plumber.

Plumbing Text and Clicking

Enter is mapped to plumb the current selections. Multiple selections are plumbed iteratively.

If a selection is one character long, it is treated like a Plan 9 "click". The surrounding (or following) WORD is plumbed instead, and a "click" attribute is computed with the selection’s offset.

A special case is when filetype is diff: The location of the cursor within the diff chunk is used to compute a position in the "new" file, and this file, line, and column are plumbed.

kakoune is sent as the source. The current working directory is sent unless overridden by setting the plumb_wdir option. Additionally, a session attribute is sent with the value of %val{session}.

Opening Plumbs in Kakoune

edit-client is a script which will listen to the plumber’s edit port and send Kakoune sessions commands it receives. It can be used to open files in Kakoune when plumbed.

It should be wrapped with systemd or launchd. Make sure that kak and 9 are in the path and $NAMESPACE is set properly.

See the plumbing-examples file for examples of usage.

Contributing

All new functionality must contain tests. See test/tests.bash for details.

About

Kakoune integration with the plan9port plumber

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published