$E_FN crashes or uses the wrong file outside :ExecutorRun
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 76/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc run_one_off_cmd, set_task_command và get_relative_buffer_name, nơi issue báo cáo đường dẫn buffer đã cũ hoặc nil. Tái hiện cả hai trường hợp trong Neovim: chạy :ExecutorOneOff trước :ExecutorRun, sau đó chạy lệnh này từ một buffer khác sau :ExecutorRun. Cập nhật lựa chọn buffer cho các đường dẫn bị ảnh hưởng và xác minh $E_FN sử dụng tệp hiện tại mà không gặp sự cố.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
:ExecutorRun records the current buffer, and $E_FN uses that recorded buffer. Other ways of running or setting a command do not record it first, so $E_FN either crashes or uses the wrong file.
Steps to reproduce
Crash
- Start Neovim and open any file.
- Before running
:ExecutorRun, run:ExecutorOneOff echo $E_FN. - The command fails with
Invalid 'buf': Expected Lua number. The error comes fromnvim_buf_get_name(nil)inget_relative_buffer_name.
Wrong file
- Open
a.jsand run:ExecutorRunonce. - Switch to
b.js. - Run
:ExecutorOneOff echo $E_FN. The command runs ona.jsinstead ofb.js.
Affected paths
last_active_buf_id is set only in Executor.run(). These paths read it before it is set, or after it has gone stale:
:ExecutorOneOff(run_one_off_cmd).- Choosing a preset.
set_task_commandruns beforeExecutor.run()records the buffer. - Choosing an entry from the history picker. This path also calls
set_task_commandbeforeExecutor.run(). require("executor").api.set_task_commandandapi.run_task.
Possible fix
Record the current buffer in run_one_off_cmd and set_task_command. Alternatively, read the current buffer directly when last_active_buf_id is nil.
- Ngôn ngữ chính
- Lua
- Star
- 161
- Fork
- 12
- Merge trung bình
- 25 phút
- Pull request đã merge (30 ngày)
- 1
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của google/executor.nvim
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
google/executor.nvim#46 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
google/executor.nvim#38 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
google/executor.nvim#35 ·
-
[Feature Request] Option to run ExecutorShowDetail when the current task finishesCó thể đã có người làm @jackfranklin đã nhận 513 ngày trước. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
google/executor.nvim#33 · 9 bình luận ·
-
IMPORTANT: breaking changesĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
google/executor.nvim#26 · 3 bình luận ·
Tất cả issue của google/executor.nvim
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
teradata-labs/loom#624 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày
-
lsp
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 76/100
neovim/neovim#42774 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày