Skip to content

Cursor Jumps to present working directory after New File Creation #1615

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
anoopd opened this issue Sep 30, 2022 · 5 comments · Fixed by #1622
Closed

Cursor Jumps to present working directory after New File Creation #1615

anoopd opened this issue Sep 30, 2022 · 5 comments · Fixed by #1622
Labels
bug Something isn't working

Comments

@anoopd
Copy link

anoopd commented Sep 30, 2022

Description

The cursor jumps to the present working directory (pwd) after creating a file in any of the directories .

Neovim version

NVIM v0.7.2
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by brew@iMac-Pro

Operating system and version

ProductName: Mac OS X 10.15.7 ,BuildVersion: 19H2026

nvim-tree version

3676e0b

Minimal config

vim.cmd [[set runtimepath=$VIMRUNTIME]]
vim.cmd [[set packpath=/tmp/nvt-min/site]]
local package_root = "/tmp/nvt-min/site/pack"
local install_path = package_root .. "/packer/start/packer.nvim"
local function load_plugins()
  require("packer").startup {
    {
      "wbthomason/packer.nvim",
      "kyazdani42/nvim-tree.lua",
      "kyazdani42/nvim-web-devicons",
      -- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
    },
    config = {
      package_root = package_root,
      compile_path = install_path .. "/plugin/packer_compiled.lua",
      display = { non_interactive = true },
    },
  }
end
if vim.fn.isdirectory(install_path) == 0 then
  print "Installing nvim-tree and dependencies."
  vim.fn.system { "git", "clone", "--depth=1", "https://github.com/wbthomason/packer.nvim", install_path }
end
load_plugins()
require("packer").sync()
vim.cmd [[autocmd User PackerComplete ++once echo "Ready!" | lua setup()]]
vim.opt.termguicolors = true
vim.opt.cursorline = true

-- MODIFY NVIM-TREE SETTINGS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
_G.setup = function()
  require("nvim-tree").setup {}
end

Steps to reproduce

  1. nvim -nu /tmp/nvt-min.lua
  2. :NvimTree
  3. Move to any sub directory
  4. Create a new file pressing a
  5. Press enter
  6. Cursor jumps to present working directory .

Expected behavior

The cursor should remain in the directory on which the file is created .

Actual behavior

Cursor jumps to the parent directory and have to use motion keys to open the newly created file

@anoopd anoopd added the bug Something isn't working label Sep 30, 2022
@alex-courtis
Copy link
Member

I'm not able to reproduce; it seems I am missing a step. Attempt:

asciicast

@kyazdani42
Copy link
Member

I think there is a defer_fn in this area which might cause that if reload is slow after adding a file.

@anoopd
Copy link
Author

anoopd commented Oct 3, 2022

@alex-courtis Sorry for being late . Please have a look . If i am trying it from the tmp folder itself then it is working as intended, but when working on a react project or a wordpress project the cursor jumps back .

https://asciinema.org/a/hfwiDZUqHhqUyTVZktaTStlaV

@alex-courtis
Copy link
Member

alex-courtis commented Oct 3, 2022

Aha! It's the wrapped was properly created message forcing an enter press.

You're right about the defer_fn

Always calling reload then immediately focusing "resolves" the issue. Perhaps a synchronous call to refresh the directory followed by synchronous focus.

Thoughts @kyazdani42 ?

@kyazdani42
Copy link
Member

i dont mind a hack for this, current solution is already a hack :)

alex-courtis added a commit that referenced this issue Oct 8, 2022
…irmation (#1622)

* fix(#1615): focus created file when command line prompt requires confirmation

* fix(#1615): focus created file when command line prompt requires confirmation
Almo7aya pushed a commit to Almo7aya/nvim-tree.lua that referenced this issue Oct 11, 2022
…ires confirmation (nvim-tree#1622)

* fix(nvim-tree#1615): focus created file when command line prompt requires confirmation

* fix(nvim-tree#1615): focus created file when command line prompt requires confirmation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
3 participants