this post was submitted on 09 Nov 2023
3 points (100.0% liked)

Neovim

1728 readers
1 users here now

Neovim is a modal text editor forked off of Vim in 2014. Being modal means that you do not simply type text on screen, but the behavior and functionality of the editor changes entirely depending on the mode.

The most common and most used mode, the "normal mode" for Neovim is to essentially turn your keyboard in to hotkeys with which you can navigate and manipulate text. Several modes exist, but two other most common ones are "insert mode" where you type in text directly as if it was a traditional text editor, and "visual mode" where you select text.

Neovim seeks to enable further community participation in its development and to make drastic changes without turning it in to something that is "not Vim". Neovim also seeks to enable embedding the editor within GUI applications.

The Neovim logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License.

founded 3 years ago
MODERATORS
 

The example below is not working (error is given when neovim is opened not recognising $env_var) how can I let him recognise the env_var?

g = {

name = "+grep",

a = { "Telescope grep_string", "Grep on all dirs" },

s = { "Telescope grep_string search_dirs={"$env_var/dir1/dir2/dir3/"} cr>", "Grep on dir" },

},

Thanks

top 7 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 1 year ago (1 children)

Vimscript: "Telescope grep_string search_dirs=["$HOME/.config"]"

Lua: require("telescope.builtin").grep_string({ search_dirs = { os.get_env("HOME") .. "/.config" } })

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

tried this but still not woking (tried with and without .. )

s = { "Telescope grep_string search_dirs={os.get_env("prj_path") .. "/dir1/dir2/dir3/"} cr>", "Grep on dir3" }

what's wrong?

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

You're mixing Lua with Vimscript, the stuff with in double quotes should be in Vimscript

s = { "Telescope grep_string search_dirs=['$prj_path/dir1/dir2/dir3/'] cr>", "Grep on dir3" }

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (2 children)

I'm very sorry, but I don't understad how should I do to let it work in lua (I'm using init.vim but this part is under lua << EOF)

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

ok, got it

  s = { "Telescope grep_string search_dirs=['$prj_path/dir1/dir2/dir3/']", "Grep on dir3" },

this works....many Thanks!!!

[–] [email protected] 0 points 1 year ago* (last edited 1 year ago) (1 children)

@dafunkkk @lckdscl I would advise you to either read neovim’s lua guides:
https://neovim.io/doc/user/lua.html
https://neovim.io/doc/user/lua-guide.html#lua-guide
or have a look at some video tutorials, e.g. https://www.youtube.com/watch?v=w7i4amO_zaE&list=PLm323Lc7iSW_wuxqmKx_xxNtJC_hJbQ7R&index=6
If you really want to build your own neovim configuration, you will need to get comfortable with lua.

[–] [email protected] 0 points 1 year ago* (last edited 1 year ago)

yeah, just asking here for quick solutions (don't want to spend tons of time reading all the guides)