nodejs / nodejs/node

node:readline support reading non printable characters such as group separator

Đang mở
#53,923 4 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

feature request readline
Ngôn ngữ chính
JavaScript
Star
122k
Fork
37.4k
Merge trung bình
4 ngày 3 giờ
Pull request đã merge (30 ngày)
272

Mô tả

What is the problem this feature will solve?

When using a USB barcode reader on a TTY app that uses node:readline the group separator character \x1d is needed for GS1-128 barcodes. GS1-128 barcodes contain multiple elements defined by an Application Identifier (AI) that is a 2-4 digit code followed by value. Either a defined length is expected for the data or it looks for the group separator character for early termination of the value.

What is the feature you are proposing to solve the problem?

accept some or all non printable characters as inputs to readline

One of the following

  1. add a flag to turn on that by default is disable to preserve existing implementations
  2. add an option to explicitly define allowable non printable characters, defaults to an empty list
  3. both a global flag and a list
What alternatives have you considered?

I've considered writing my own, seems like a bad idea for support and security. I may look into putting in a PR but I'm starting with a feature request.
I've considered rewriting the application into a non NodeJS application.
I've considered just replacing the TTY app with something more "modern" but there are external layers affecting this decision. This wouldn't allow copy/pasta of other characters which could be useful in some edge cases.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

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.

Hướng nghiên cứu

Bắt đầu bằng cách kiểm tra cách node:readline xử lý đầu vào TTY và hiện đang xử lý các ký tự không thể in như thế nào. Issue đề xuất một flag toàn cục, một allowlist hoặc cả hai, vì vậy người đóng góp trước tiên cần giải quyết lựa chọn thiết kế này. Công việc được xem là hoàn tất khi có thể đọc dấu phân cách nhóm mà không phá vỡ hành vi hiện có của readline, với độ bao phủ cho tùy chọn đã chọn.

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

Đánh giá

Công nghệ
javascript, nodejs
Lĩnh vực
cli
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
38/100

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.