Merge pull request #95 from EthanJWright/master

feat(term): configuration to run command automatically on send
This commit is contained in:
ThePrimeagen 2021-09-22 14:24:28 -06:00 committed by GitHub
commit c9a613b4e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 0 deletions

View File

@ -137,6 +137,7 @@ require("harpoon").setup({
global_settings = {
save_on_toggle = false,
save_on_change = true,
enter_on_sendcmd = false,
},
... your other configs ...
})
@ -148,6 +149,8 @@ require("harpoon").setup({
enable this option (on by default) harpoon will not save any changes to your
file. It is very unreliable to save your harpoon on exit (at least that is
what I have found).
* `enter_on_sendcmd` will set harpoon to run the command immediately as it's
passed to the terminal when calling `sendCommand`.
#### Preconfigured Terminal Commands
These are project specific commands that you wish to execute on the regular.

View File

@ -156,6 +156,7 @@ M.setup = function(config)
global_settings = {
["save_on_toggle"] = false,
["save_on_change"] = true,
["enter_on_sendcmd"] = false,
},
}, expand_dir(
c_config

View File

@ -1,5 +1,6 @@
local harpoon = require("harpoon")
local log = require("harpoon.dev").log
local global_config = harpoon.get_global_settings()
local M = {}
local terminals = {}
@ -76,6 +77,10 @@ M.sendCommand = function(idx, cmd, ...)
cmd = harpoon.get_term_config().cmds[cmd]
end
if global_config.enter_on_sendcmd then
cmd = cmd .. "\n"
end
if cmd then
log.debug("sendCommand:", cmd)
vim.api.nvim_chan_send(term_handle.term_id, string.format(cmd, ...))