Markdown and Astro language servers do not start when the project path contains a non-ASCII character or a space

Đang mở Phù hợp với người mới
#2,277 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@RoiSoleil đang làm issue này rồi.

Từ ngày 12/11/2026.

  • #2278 của @RoiSoleil — đang mở

Đá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
78/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
java, markdown
Lĩnh vực
backend

Hướng nghiên cứu

Đọc MarkdownLanguageServer.getInitializationOptions và AstroLanguageServer.getInitializationOptions. Theo issue, chúng xây dựng thư mục làm việc từ projectRootUri.getRawPath(). Kiểm tra cách Paths.get(projectRootUri) tạo đường dẫn hệ thống tệp và tìm các bài kiểm tra bao phủ đường dẫn có dấu cách hoặc ký tự không phải ASCII. Công việc hoàn tất khi cả hai language server khởi động được với các đường dẫn dự án đó; issue không nêu tên tệp kiểm thử nào.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

When a project's path contains a non-ASCII character or a space, the Markdown language server cannot start. On Windows (Eclipse 4.41, Java 25), opening a Markdown file of a project located in C:\Users\<user>\Desktop\Evénements\<project> logs:

java.io.IOException: Cannot run program "D:\Programs\eclipse\.node\node-v24.22.1-win-x64\node.exe" (in directory "C:\Users\<user>\Desktop\Ev%C3%A9nements\<project>"): CreateProcess error=267, Nom de répertoire non valide
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1112)
	at org.eclipse.lsp4e.server.ProcessStreamConnectionProvider.start(ProcessStreamConnectionProvider.java:58)
	at org.eclipse.wildwebdeveloper.ui.preferences.ProcessStreamConnectionProviderWithPreference.start(ProcessStreamConnectionProviderWithPreference.java:133)
	at org.eclipse.lsp4e.LanguageServerWrapper.lambda$0(LanguageServerWrapper.java:438)

The working directory still contains %C3%A9 instead of é, so it does not exist.

MarkdownLanguageServer.getInitializationOptions and AstroLanguageServer.getInitializationOptions set the working directory with projectRootUri.getRawPath(), which keeps the percent-encoding of the URI (%C3%A9 for é, %20 for a space). Paths.get(projectRootUri) gives the actual file system path.

#1413 (Vue, project name with spaces) looks like the same kind of problem.

Ngôn ngữ chính
Java
Star
203
Fork
76
Merge trung bình
1 ngày 5 giờ
Pull request đã merge (30 ngày)
30

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của eclipse-wildwebdeveloper/wildwebdeveloper

Tất cả issue của eclipse-wildwebdeveloper/wildwebdeveloper

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.