Ngăn tự động hoàn thành trong Mã Visual Studio


101

Tôi đang sử dụng Mã Visual Studio mới , này rõ ràng là chưa sẵn sàng ra mắt nhưng tôi hy vọng sẽ giải quyết được sự cố mà tôi đang gặp phải.

Trong một tệp SQL, bất kỳ khi nào bạn nhập case, nó sẽ tự động thêm vào end, như thể bạn đang tạo một casekhối. Ngay cả khi bạn đang ở trong một nhận xét hoặc sử dụng Casenhư một phần của từ (ví dụ select CaseID from...:). Tôi muốn vô hiệu hóa hoàn toàn tất cả những thứ vô nghĩa đó, vì nó không làm tốt công việc tự động hoàn thành mọi thứ đối với tôi.

Các tùy chọn cấu hình duy nhất tôi có thể tìm thấy, tôi đã đặt:

"editor.autoClosingBrackets": false,
"editor.suggestOnTriggerCharacters": false,

Bất kỳ ý tưởng nào khác về cách ngăn chặn điều này?

Cũng đúng với những thứ như begin(nó thêm vào end) và tôi chắc chắn rằng nhiều hơn thế nữa.


3
Một cách giải quyết là nhấn ^ Z sau khi nhập casehoặc begin. Nó vẫn còn là một nỗi đau.
zedfoxus

Câu trả lời:


168

Trong phiên bản mới nhất của Visual Studio Code, tôi đã phát hiện ra rằng

"editor.acceptSuggestionOnCommitCharacter": false

cấu hình vô hiệu hóa hành vi này.


59
Cảm ơn vì điều này. Tôi đã gõ render(và nhận được CanvasRenderingContext2Dthay thế. WTF?!?!?! Nó sẽ không cho phép tôi viết những gì tôi đã nhập mà không vô hiệu hóa ký tự cam kết. Thật là một sự vỡ nợ kinh khủng. Người chỉnh sửa không nên thay thế những gì bạn nhập mà không có sự cho phép của bạn.
Brennan Cheung

14
Nó thậm chí còn tồi tệ hơn khi nó thay đổi một cái gì đó điên loạn và tự động chèn một nhập khẩu cho rằng biểu tượng không mong muốn ..
Darius

1
@shybovycha Vâng, tôi thêm "editor.acceptSuggestionOnCommitCharacter": false vào settings.json theo cách thủ công nhưng nó không hoạt động như mong đợi. Ý tôi là nó vẫn tự động hoàn thành sau khi tôi khởi động lại VScode. Không chắc chắn lý do tại sao.
tucq88 29/11/18

4
Cảm ơn bạn vì getData+ (=> __acrt_get_locale_data_prefix()không giúp ích gì cho năng suất của tôi.
thay đổi igel

1
Tôi đã thay đổi điều này vì nó khiến tôi phát điên khi nhập JS. Tuy nhiên, tôi cũng phải nói thêm: "editor.quickSuggestions": false,để mỗi khi tôi nhập "const", tôi không nhận được một danh sách khổng lồ và không liên quan yêu cầu tôi nhấp vào ESCgiữa từ khóa và tên biến.
Neil Guy Lindberg

58

Giờ đây, một năm sau, Visual Studio Code đã khá tuyệt và sẵn sàng ra mắt. Nhưng tôi vẫn chưa tìm ra cách đơn giản để tắt hoàn toàn tính năng tự động hoàn thành.

Nhưng họ có một số thứ trong tài liệu của mình: https://code.visualstudio.com/docs/editor/intellisense#_customizing-intellisense

Về cơ bản, tôi đặt cái này vào của tôi settings.jsonđể thử và tắt nó cho không gian làm việc. Nhưng tôi vẫn phải đánh giá điều này.

// Place your settings in this file to overwrite default and user settings. 
{
    // Controls if quick suggestions should show up while typing
    "editor.quickSuggestions": { "other": false, "comments": false, "strings": false },

    // Controls if suggestions should be accepted with "Enter" - in addition to "Tab". Helps to avoid ambiguity between inserting new lines and accepting suggestions.
    "editor.acceptSuggestionOnEnter": "off",

    // Controls the delay in ms after which quick suggestions will show up.
    "editor.quickSuggestionsDelay": 10,

    // Enable word based suggestions
    "editor.wordBasedSuggestions": false
}

1
Tôi có khả năng sử dụng một phiên bản mới vì đây được viết nhưng đối với tôi "editor.quickSuggestions"là một đối tượng mà tôi có thể điều chỉnh 3 phụ giá trị: { "other": false, "comments": false, "strings": false }. Ngoài ra, có lẽ VS Mã là đủ thông minh để nhìn thấy "editor.quickSuggestions": falsevà đặt tất cả 3 false
Brad Cupit

Tôi đã không thể làm theo hướng dẫn. Hãy cải thiện câu trả lời
userJT

3
acceptSuggestionOnEnterbây giờ sẽ được đặt thành "off"phiên bản gần đây.
rjh

2
Tôi không thể chịu nổi wordBasedSuggestions, người ta có xu hướng gợi ý lại những lỗi chính tả / lỗi chính tả đã mắc phải trong quá khứ; "Đây là một tên hàm có vẻ giống với tên thật, nhưng không phải vậy!"
jrh

12

Điều này phù hợp với tôi kể từ năm 2019 đến ngày 17 tháng 5.

"editor.acceptSuggestionOnCommitCharacter": false,
"editor.acceptSuggestionOnEnter": "off",
"editor.hover.enabled": false,
"editor.minimap.enabled": false,
"editor.parameterHints.enabled": false,
"editor.quickSuggestions": false,
"editor.quickSuggestionsDelay": 10,
"editor.suggest.snippetsPreventQuickSuggestions": false,
"editor.suggestOnTriggerCharacters": false,
"editor.wordBasedSuggestions": false,

3
Thêm phần này vào tooltips di chuột vô hiệu hóa:"editor.hover.enabled": false
Vidar

7

Trong phiên bản VS Code hiện tại, hãy thêm cái này vào cài đặt người dùng của bạn:

"editor.quickSuggestions.other": false

Điều này vô hiệu hóa hầu hết các đề xuất giả mạo.


7

Đây không phải là câu trả lời chính xác, nhưng nó có thể là một lựa chọn tốt hơn. Tăng:

Biên tập viên: Đề xuất nhanh Trì hoãn

từ 50 ms (mặc định) đến 500-1000 ms.

Trong trường hợp này, bạn sẽ có nửa giây để đánh bại tùy chọn tự động hoàn thành, có thể đủ cho 95% thời gian và bạn sẽ không mất chức năng mà bạn có thể muốn trong một số trường hợp.


Câu trả lời chính xác. Tôi đã làm điều đó. Bạn có thể đặt nó thành một con số thậm chí cao hơn và thử thách bản thân xem liệu bạn có thể tự động hoàn thành nhanh hơn máy hay không ;-)
PatrickT

3

Nhắc lại câu trả lời để mọi người dễ dàng đọc lướt. Mở cài đặt của bạn bằng ⌘+,hoặc Ctrl+,.

{
    "editor.quickSuggestions": false
}

Thay vào đó, bạn nên chỉnh sửa câu trả lời hiện có. Các hướng dẫn và làm nổi bật cú pháp là bổ sung tốt, nhưng câu trả lời lặp lại có thể được xem bởi một số như can thiệp vào cơ chế bỏ phiếu
Samy bencherif

2
Vấn đề là các câu trả lời khác toàn diện hơn, mặc dù không hữu ích trong trường hợp của tôi vì tôi chỉ cần một cài đặt. Tôi không muốn xóa chi tiết khỏi câu trả lời của họ, chỉ để tập trung vào câu trả lời mà tôi cần.
ubershmekel

2

Tôi đã thực hiện thay đổi này cho phiên bản 1.22.1

"editor.wordBasedSuggestions": false

Điều này ngăn cản việc hoàn thành một từ đã xảy ra.


Thực hiện các thay đổi trên trong cài đặt người dùng có thể được tìm thấy trong Tệp -> Tùy chọn -> Cài đặt


-1

điều này có thể giúp bạn >> editor.acceptSuggestionOnCommitCharacter: false

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.