numToStr / FTerm.nvim

:fire: No-nonsense floating terminal plugin for neovim :fire:
MIT License
721 stars 24 forks source link

Feat: Pre start in background #69

Closed adelarsq closed 1 year ago

adelarsq commented 1 year ago

The first time that a terminal window is opened takes some seconds to be able to use, mainly if you have a lot of configurations to start the terminal. Would be nice a pre start feature, without to show a terminal, starting in background.

numToStr commented 1 year ago

takes some seconds to be able to use

This is never the case for me. In fact, terminal buffer opens instantaneous, the slowness comes from the shell I suppose.

Would be nice a pre start feature, without to show a terminal, starting in background.

What does this actually mean?

adelarsq commented 1 year ago

...the slowness comes from the shell I suppose.

Exactly. For me It takes some 5 seconds to start, since I have a huge amount of config on my terminal.

Would be nice a pre start feature, without to show a terminal, starting in background.

Something like a fast show/hide just when Neovim start. It's possible to simulate this behaviour with an autocmd on VimEnter that toggles FTerm.nvim, but this a bit of a workaround, no? 😄

numToStr commented 1 year ago

You can add a VimEnter and use fterm:open():close() but you will definitely see flickers.

I would recommend to make your shell load faster using lazy load and such, but I guess you already know it.

adelarsq commented 1 year ago

I am not familiar with this syntax fterm:open():close() but I tried this an works nicely:

augroup prestart_terminal
    au!
    au VimEnter * lua require('FTerm').open();require('FTerm').close(); 
augroup END

The reason is that I still use both Neovim and Vim.

...will definitely see flickers

I notice only one, that It stays on insert mode after Neovim starts. But can be a conflict with another plugin. I can live with that 😄

I would recommend to make your shell load faster using lazy load and such...

Yes, on Zsh I already using lazy load but my PowerShell still need some work.

Thanks for the help. I will close this issue, since can be solved with the previous config. I notice that you closed a little ago. Thanks @numToStr

tristone13th commented 1 year ago

require('FTerm').open();require('FTerm').close();

A very nice workaround, thanks!