pmizio / typescript-tools.nvim

⚡ TypeScript integration NeoVim deserves ⚡
MIT License
1.56k stars 45 forks source link

"Move to a new file" code action not working #289

Open yuriteixeira opened 3 months ago

yuriteixeira commented 3 months ago

As you can see, nothing changed after I called this action. Sometimes, it "cuts" the code from the original file but doesn't create a new file + "paste".

See the video-demo below:

https://github.com/user-attachments/assets/249f09a8-a4a4-40b0-a2e7-a8602c2d04f8

NVIM Version

➜  ts-tailwind-app git:(master) nvim -V1 -v
NVIM v0.10.1
Build type: Release
LuaJIT 2.1.1720049189

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/opt/homebrew/Cellar/neovim/0.10.1/share/nvim"

Run :checkhealth for more info

Output from :checkhealth


==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /opt/homebrew/Cellar/neovim/0.10.1/share/nvim/runtime

Performance ~
- OK Build type: Release

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=^H`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $TERM_PROGRAM="tmux"
- $COLORTERM="truecolor"

tmux ~
- OK escape-time: 1
- OK focus-events: on
- $TERM: screen-256color

External Tools ~
- WARNING ripgrep not available

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.22.6 (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v20.16.0 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: Apple clang version 15.0.0 (clang-1500.3.9.4)
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "arm64",
  release = "23.5.0",
  sysname = "Darwin",
  version = "Darwin Kernel Version 23.5.0: Wed May  1 20:12:58 PDT 2024; root:xnu-10063.121.3~5/RELEASE_ARM64_T6000"
} ~

Parser/Features         H L F I J
  - bash                ✓ ✓ ✓ . ✓
  - c                   ✓ ✓ ✓ ✓ ✓
  - git_rebase          ✓ . . . ✓
  - gitcommit           ✓ . . . ✓
  - go                  ✓ ✓ ✓ ✓ ✓
  - javascript          ✓ ✓ ✓ ✓ ✓
  - lua                 ✓ ✓ ✓ ✓ ✓
  - markdown            ✓ . ✓ ✓ ✓
  - markdown_inline     ✓ . . . ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - scss                ✓ . ✓ ✓ ✓
  - svelte              ✓ ✓ ✓ ✓ ✓
  - tmux                ✓ . . . ✓
  - tsx                 ✓ ✓ ✓ ✓ ✓
  - typescript          ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓
  - yaml                ✓ ✓ ✓ ✓ ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

==============================================================================
provider.clipboard: require("provider.clipboard.health").check()

Clipboard (optional) ~
- OK Clipboard tool found: pbcopy

==============================================================================
provider.node: require("provider.node.health").check()

Node.js provider (optional) ~
- Node.js: v20.16.0

- WARNING Missing "neovim" npm (or yarn, pnpm) package.
  - ADVICE:
    - Run in shell: npm install -g neovim
    - Run in shell (if you use yarn): yarn global add neovim
    - Run in shell (if you use pnpm): pnpm install -g neovim
    - You may disable this provider (and warning) by adding `let g:loaded_node_provider = 0` to your init.vim

==============================================================================
provider.perl: require("provider.perl.health").check()

Perl provider (optional) ~
- WARNING "Neovim::Ext" cpan module is not installed
  - ADVICE:
    - See :help |provider-perl| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_perl_provider = 0` to your init.vim
- WARNING No usable perl executable found

==============================================================================
provider.python: require("provider.python.health").check()

Python 3 provider (optional) ~
- `g:python3_host_prog` is not set. Searching for python3 in the environment.
- Executable: /opt/homebrew/opt/python@3.10/libexec/bin/python3
- Python version: 3.10.14
- pynvim version: 0.4.3
- OK Latest pynvim is installed.

Python virtualenv ~
- OK no $VIRTUAL_ENV

==============================================================================
provider.ruby: require("provider.ruby.health").check()

Ruby provider (optional) ~
- Ruby: ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]
- WARNING `neovim-ruby-host` not found.
  - ADVICE:
    - Run `gem install neovim` to ensure the neovim RubyGem is installed.
    - Run `gem environment` to ensure the gem bin directory is in $PATH.
    - If you are using rvm/rbenv/chruby, try "rehashing".
    - See :help |g:ruby_host_prog| for non-standard gem installations.
    - You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /Users/yuriteixeira/.local/state/nvim/lsp.log
- Log size: 121 KB

vim.lsp: Active Clients ~
- GitHub Copilot (id: 1)
    Root directory: nil
    Command: node /Users/yuriteixeira/.vim/plugged/copilot.vim/dist/language-server.js --stdio
    Settings: {
      ["github-enterprise"] = {
        uri = vim.NIL
      },
      http = {
        proxy = vim.NIL,
        proxyStrictSSL = vim.NIL
      }
    }
    Attached buffers: 1
- typescript-tools (id: 2)
    Root directory: ~/Workspace/tmp/ts-tailwind-app
    Command: function: 0x010155cd90
    Settings: vim.empty_dict()
    Attached buffers: 1

vim.lsp: File Watcher ~
- file watching "(workspace/didChangeWatchedFiles)" disabled on all clients

vim.lsp: Position Encodings ~
- No buffers contain mixed position encodings

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: bash                 ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/bash.so
- OK Parser: c                    ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/c.so
- OK Parser: gitcommit            ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/gitcommit.so
- OK Parser: git_rebase           ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/git_rebase.so
- OK Parser: go                   ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/go.so
- OK Parser: javascript           ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/javascript.so
- OK Parser: lua                  ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/lua.so
- OK Parser: markdown             ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/markdown.so
- OK Parser: query                ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/query.so
- OK Parser: scss                 ABI: 13, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/scss.so
- OK Parser: svelte               ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/svelte.so
- OK Parser: tmux                 ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/tmux.so
- OK Parser: tsx                  ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/tsx.so
- OK Parser: typescript           ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/typescript.so
- OK Parser: vim                  ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/vimdoc.so
- OK Parser: yaml                 ABI: 14, path: /Users/yuriteixeira/.vim/plugged/nvim-treesitter/parser/yaml.so
- OK Parser: c                    ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/c.so
- OK Parser: lua                  ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/lua.so
- OK Parser: markdown             ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/markdown.so
- OK Parser: markdown_inline      ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/markdown_inline.so
- OK Parser: query                ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/query.so
- OK Parser: vim                  ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /opt/homebrew/Cellar/neovim/0.10.1/lib/nvim/parser/vimdoc.so
KostkaBrukowa commented 3 months ago

I'll try to invastigate it maybe in a weekend, because it's such a nice feature

KostkaBrukowa commented 3 months ago

Hey! Have you tried doing :wall after this action? Maybe the file is created but without saving it doesn't appear in the git

carlos-algms commented 3 months ago

I've tried :wall after running the "move to new file" action and it also doesn't work.

yuriteixeira commented 2 months ago

For reference, it seems to be working with https://github.com/yioneko/vtsls.

kloczewiak commented 1 day ago

For reference, it seems to be working with https://github.com/yioneko/vtsls.

Not anymore