VS Code 1.51 გამოვიდა ჩამაგრებული ჩანართის გაუმჯობესებებით და სხვა
Visual Studio Code არის პოპულარული აპლიკაცია დეველოპერებისთვის. ეს არის კოდის რედაქტორი, რომელიც ხელახლა არის განსაზღვრული და ოპტიმიზირებული თანამედროვე ვებ და ღრუბლოვანი აპლიკაციების შესაქმნელად და გამართვისთვის. VS Code-ს გააჩნია სხვადასხვა გაფართოებები და დამხმარეები, რომლებიც ნამდვილად ზოგავს დროს. ის ხელმისაწვდომია ყველა ძირითადი პლატფორმისთვის, მათ შორის Windows, MacOS და Linux. Microsoft-მა დღეს გამოუშვა აპლიკაციის ახალი ვერსია, რომელიც აუმჯობესებს აპის სხვადასხვა ფუნქციებს, მათ შორის ჩამაგრებულ ჩანართებს, GitHub ინტეგრაციას და სხვას.
VS Code 1.51 აღსანიშნავია შემდეგი ცვლილებებით.
შენიშვნა: შეგიძლიათ ჩამოტვირთოთ აპლიკაცია მისი ოფიციალური ვებ – გვერდიდან.
სამუშაო მაგიდა
უფრო თვალსაჩინო ჩამაგრებული ჩანართები
ჩამაგრებული ჩანართები ახლა ყოველთვის აჩვენებს მათ პინის ხატულას, მაშინაც კი, როცა არააქტიურია, მათი ამოცნობის გასაადვილებლად. თუ რედაქტორი დამაგრებულია და შეიცავს შენახულ ცვლილებებს, ხატულა ასახავს ორივე მდგომარეობას.
გაფართოების ხეები იყენებენ მორგებულ ჰოვერს
იმის ნაცვლად, რომ გამოვიყენოთ ძირითადი ინსტრუმენტების მინიშნება გაფართოების ხის ხედებში, ჩვენ ახლა ვიყენებთ მორგებულ ჰოვერს, რომელიც თანმიმდევრულია პლატფორმაზე და უკეთ ერგება საერთო UX-ს.
დააინსტალირეთ გაფართოება სინქრონიზაციის გარეშე
ახლა შეგიძლიათ დააინსტალიროთ გაფართოება სინქრონიზაციის გარეშე, სანამ ჩართულია პარამეტრების სინქრონიზაცია.
თემა: GitHub Light
დააინსტალირეთ გაფართოება Explorer-დან
VS Code ახლა მხარს უჭერს გაფართოების VSIX ფაილის დაინსტალირებას Explorer-დან VSIX ფაილზე მაუსის მარჯვენა ღილაკით დაჭერით და არჩევით დააინსტალირეთ გაფართოება VSIX კონტექსტური მენიუს ელემენტი.
შეიტანეთ ბუნდოვანი ბრძანება
ახალი შინაგანი workbench.action.blur
ახლა ხელმისაწვდომია ბრძანება, რომელიც შლის ფოკუსს ნებისმიერი ფოკუსირებადი შეყვანისგან. ამ ბრძანებისთვის შეგიძლიათ კლავიატურის მალსახმობი მივანიჭოთ კლავიატურის მალსახმობების პარამეტრები.
ინტეგრირებული ტერმინალი
ადგილობრივი ექო
ტერმინალში ცვლილებების შეტანა ტრადიციულად მოითხოვს ინფორმაციის გაგზავნას ტერმინალის პროცესში, დამუშავებას და VS კოდში დაბრუნებას, რათა გავლენა იქონიოს. ეს შეიძლება იყოს ნელი, როდესაც მუშაობთ ცუდ ან შორეულ კავშირზე SSH სერვერი ან კოდების სივრცე.
ეს გამოშვება ამატებს ტერმინალს „ლოკალური ექოს“ რეჟიმს, რომელიც ცდილობს წინასწარ განსაზღვროს ლოკალურად განხორციელებული ცვლილებები და კურსორის მოძრაობა და აჩვენოს ისინი ინტერფეისში სერვერზე ორმხრივი მოგზაურობის საჭიროების გარეშე. ნაგულისხმევად, პროგნოზირებული სიმბოლოები გამოჩნდება, როგორც "ჩამქრალი":
ამის კონფიგურაციისთვის შეგიძლიათ გამოიყენოთ ორი პარამეტრი:
-
terminal.integrated.localEchoLatencyThreshold
აკონფიგურირებს აღმოჩენილი დაყოვნების ზღურბლს მილიწამებში, რომლის დროსაც ადგილობრივი ექო გააქტიურდება. ეს შეიძლება დაყენდეს0
მუდმივად ჩართოთ ფუნქცია, ან-1
რომ გამორთოთ. ნაგულისხმევი30
. -
terminal.integrated.localEchoStyle
აკონფიგურირებს ლოკალური სიმბოლოს სტილს ან ფერს, ნაგულისხმევადდაბნელებული
.
IntelliSense
ზომის შეცვლადი წინადადებები
ამ ეტაპს, ჩვენ რამდენიმე გაუმჯობესება განვახორციელეთ შემოთავაზებების ინტერფეისში. უპირველეს ყოვლისა, ახლა მისი ზომის შეცვლაა შესაძლებელი. გადაათრიეთ გვერდები ან კუთხეები კონტროლის ზომის შესაცვლელად.
თემა: GitHub Light, შრიფტი: FiraCode
წინადადებების სიის ზომა შეინახება და აღდგება სესიებზე. დეტალების პანელის ზომა ინახება მხოლოდ თითო სესიაზე, რადგან ეს ზომა უფრო ცვალებადია. ასევე, editor.suggest.maxVisibleSuggestions
პარამეტრი მოძველდა.
სტატუსის ზოლი წინადადებებისთვის
შემოთავაზებების კონტროლს ახლა ასევე შეუძლია აჩვენოს საკუთარი სტატუსის ზოლი ფანჯრის ბოლოში. ჩართეთ ის გამოყენებით editor.suggest.showStatusBar
დაყენება. ის ამარტივებს დეტალების გადართვას და აჩვენებს, თუ დასრულება მხარს უჭერს ჩასმას, ჩანაცვლებას ან ორივეს.
თემა: GitHub Light, შრიფტი: FiraCode
ზემოთ მოყვანილ ნიმუშში, „ჩასმის“ არჩევით შედეგია მათემატიკა. იატაკის ჭერი
და აირჩიეთ "ჩანაცვლება" შედეგი მათემატიკა.სართული
.
Ახალი editor.suggest.insertMode
პარამეტრი საშუალებას გაძლევთ დააკონფიგურიროთ, გირჩევნიათ ჩასმა თუ ჩანაცვლება. როდესაც შეთავაზება მხარს უჭერს ორივეს, თქვენი უპირატესობა ნაგულისხმევი იქნება.
გადაიტანეთ კურსორი შემოთავაზებების ასარჩევად
დაბოლოს, მაგრამ არანაკლებ მნიშვნელოვანია, ახლა შეგიძლიათ კურსორის გადატანა, სანამ შემოთავაზებები გამოჩნდება. მაგალითად, შეგიძლიათ შემოთავაზებების გააქტიურება სიტყვის ბოლოს, გადაადგილება მარცხნივ მეტი შეთავაზების სანახავად და შემდეგ გამოიყენეთ ჩანაცვლება სიტყვის გადასაწერად.
თემა: GitHub Light
ემეტ
მორგებული ფრაგმენტები Emmet-ში დაბრუნდა. გარდა ამისა, სნიპეტები ახლა ავტომატურად განახლდება სნიპეტების ფაილის შენახვის ან განახლების შემდეგ emmet.extensionsPath
დაყენება.
წყაროს კონტროლი
Source Control შეყვანის ყუთი ინახავს commit შეტყობინების ისტორიას
ეს მიმართავს ა ფუნქციის მოთხოვნა SCM ჩადენის ისტორიაში ნავიგაცია. დაჭერა ↑ (Windows, Linux ზემოთ) და ↓ (Windows, Linux ქვემოთ) აჩვენოს წინა და შემდეგი შეთანხმებები, შესაბამისად. შეყვანის ველის პირველ და ბოლო პოზიციაზე პირდაპირ გადასატანად დააჭირეთ ღილაკს ალტ შესაბამის ისრთან ერთად.
Git: მონიშნეთ ბრძანებები ქვემენიუში
თეგებთან დაკავშირებული Git ბრძანებები დაემატა მას ... Git მენიუ.
Git: Rebase ბრძანება
ახალი Git: ფილიალის გადაყენება... დამატებულია ბრძანება, რომელიც საშუალებას გაძლევთ განაახლოთ ფილიალი ინტერფეისის გამოყენებით.
Git: რეკურსიული კლონის ბრძანება
Ერთად Git: კლონი (რეკურსიული) ბრძანებით, ახლა შეგიძლიათ რეკურსიულად კლონიროთ Git საცავი, მათ შორის მისი ჩადგმული Git ქვემოდულები.
ქრონოლოგია: Emoji-ის მოკლე კოდის რენდერი
ჩვენ ახლა ვაძლევთ emoji-ს მოკლე კოდებს, როგორიცაა :ღიმილი:
, Timeline View-ში.
ენები
მარკდაუნის ჭკვიანი შერჩევა
გააფართოვეთ და შეამცირეთ არჩევანი Markdown დოკუმენტებში შემდეგი ახალი ბრძანებების გამოყენებით:
- გაფართოება: ⌃⇧⌘→ (Windows, Linux Shift+Alt+Right)
- შემცირება: ⌃⇧⌘← (Windows, Linux Shift+Alt+მარცხნივ)
შერჩევა ეხება შემდეგს და მიჰყვება ტრადიციულ იერარქიულ ნიმუშს:
- სათაურები
- სიები
- ციტატების დაბლოკვა
- შემოღობილი კოდის ბლოკები
- Html კოდის ბლოკები
- აბზაცები
JavaScript-ისა და TypeScript-ისთვის ცარიელი ფრჩხილის ფორმატირების ვარიანტი
Ახალი javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
და typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces
ფორმატირების კონფიგურაციის ოფცია აკონტროლებს, თუ სივრცეები ჩასმულია ცარიელ ფრჩხილებს შორის. ნაგულისხმევი მნიშვნელობა ამ პარამეტრებისთვის არის true. მაგალითად, JavaScript-ისთვის:
class Foo { doFoo() {} }
დაყენება "javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false
და კოდის ფორმატირება იწვევს:
class Foo { doFoo() {} // გაითვალისწინეთ, რომ სივრცე ამოღებულია. }
ბრაუზერის მხარდაჭერა
საქაღალდეების ჩამოტვირთვა (Edge, Chrome)
ახლის გამოყენება ფაილური სისტემის წვდომა API, VS Code, რომელიც მუშაობს ბრაუზერში, ახლა შეუძლია შესთავაზოს საქაღალდეების ჩამოტვირთვის მოქმედება File Explorer-დან, რათა ჩამოტვირთოს ყველა ფაილი და საქაღალდე დისკზე.
Შენიშვნა: ამისათვის საჭიროა Microsoft Edge-ის ან Google Chrome-ის უახლესი ვერსია.
გახსენით სამუშაო ადგილის შეტყობინება
თუ გახსნით საქაღალდეს, რომელიც შეიცავს .კოდი-სამუშაო სივრცე
ფაილების ზედა დონეზე, ახლა ნახავთ შეტყობინებას, რომელიც მოგთხოვთ მის გახსნას. ეს ყოველთვის ასე იყო VS Code-ში დესკტოპისთვის და ახლა იმუშავებს ბრაუზერშიც.
თავიდან აიცილეთ შემთხვევითი დახურვა
ახალი პარამეტრი window.ConfirmBeforeClose
დაემატა დადასტურების დიალოგის საჩვენებლად სამუშაო მაგიდის დახურვამდე ან გასვლამდე.
შესაძლო მნიშვნელობებია:
-
მხოლოდ კლავიატურა
დადასტურება გამოჩნდება მხოლოდ მაშინ, როდესაც იყენებთ კლავიშების დახურვას (მაგალითად, ⌘ ვ (Windows, Linux Ctrl+W)). (ნაგულისხმევი) -
ყოველთვის
: დადასტურების დიალოგი ყოველთვის გამოჩნდება, მაშინაც კი, თუ თქვენ დახურავთ მაუსის ჟესტით. -
არასოდეს
: დადასტურება არასოდეს გამოჩნდება.
შენიშვნა: ეს პარამეტრი შეიძლება არ მოიცავდეს ყველა შემთხვევას. ბრაუზერებმა შეიძლება მაინც გადაწყვიტონ ჩანართის ან ფანჯრის დახურვა დადასტურების გარეშე.
წვლილი გაფართოებებში
GitHub Pull-ის მოთხოვნები და პრობლემები
მუშაობა გრძელდება GitHub Pull-ის მოთხოვნები და პრობლემები გაფართოება, რომელიც საშუალებას გაძლევთ იმუშაოთ, შექმნათ და მართოთ pull-ის მოთხოვნები და საკითხები.
ყველა ახალი ფუნქციისა და განახლების შესახებ გასაგებად, შეგიძლიათ ნახოთ სრული ცვლილებების ჟურნალი 0.22.0-ისთვის გაფართოების გათავისუფლება.
დისტანციური განვითარება
მუშაობა გრძელდება დისტანციური განვითარების გაფართოებები, რომელიც საშუალებას გაძლევთ გამოიყენოთ კონტეინერი, დისტანციური მანქანა ან Windows ქვესისტემა Linux-ისთვის (WSL) როგორც სრულფასოვანი განვითარების გარემო.
1.51-ში გამორჩეული თვისებები მოიცავს:
- ტერმინალის სესიებთან შენარჩუნების/ხელახლა დაკავშირების შესაძლებლობა.
- პორტის გადაგზავნის გაუმჯობესებული გამოცდილება.
თქვენ შეგიძლიათ გაეცნოთ გაფართოების ახალ ფუნქციებს და შეცდომების გამოსწორებას აქ დისტანციური განვითარების გამოშვების შენიშვნები.
ფუნქციების გადახედვა
გადახედვის ფუნქციები არ არის მზად გამოსაშვებად, მაგრამ საკმარისად ფუნქციონალურია გამოსაყენებლად. ჩვენ მივესალმებით თქვენს ადრეულ გამოხმაურებას, სანამ ისინი დამუშავების პროცესშია.
პარამეტრების სინქრონიზაცია
პარამეტრების სინქრონიზაცია ახლა სინქრონიზებს გაფართოებების გლობალურ მდგომარეობას. გაფართოებებმა უნდა უზრუნველყონ სახელმწიფოს სინქრონიზაცია ახლად დანერგილის გამოყენებით setKeysForSync API.
დაიმახსოვრე პროქსის სერთიფიკატები
ჩვენ ვცვლით შესვლის დიალოგს, რომელიც გვიჩვენებს, როდესაც ქსელური კავშირი მოითხოვს ავტორიზაციას პროქსით. ახალი პარამეტრი, window.enableExperimentalProxyLoginDialog: true
, საშუალებას მისცემს ამ ახალ გამოცდილებას, რომლის დაყენებასაც ვგეგმავთ ნაგულისხმევად მომავალ გამოშვებაში.
თემა: GitHub Light
დიალოგი გამოჩნდება VS Code ფანჯრის შიგნით და გთავაზობთ რწმუნებათა სიგელების დამახსოვრების საშუალებას, რათა არ მოგიწიოთ მათი მიწოდება ყოველ ჯერზე, როცა დაიწყებთ VS Code-ს. სერთიფიკატები შეინახება OS-ის სტანდარტული სერთიფიკატების მაღაზიაში (keychain macOS-ზე, Windows Credential Manager Windows-ზე და gnome keyring Linux-ზე).
ჩვენ ჯერ კიდევ ვაჩვენებთ ამ დიალოგს მხოლოდ ერთხელ სესიაზე, მაგრამ შესაძლოა მომავალში გადახედოთ ამ გადაწყვეტილებას. თქვენ დაინახავთ, რომ დიალოგი კვლავ გამოჩნდება იმ შემთხვევაში, თუ თქვენ მიერ დასამახსოვრებლად არჩეული რწმუნებათა სიგელები არასწორია. მათი ხელახლა მიწოდება საშუალებას გაძლევთ შეცვალოთ ისინი.
გთხოვთ, ჩართოთ ეს ვარიანტი და შეგვატყობინოთ, თუ რამე არ მუშაობს ისე, როგორც მოსალოდნელია ჩვენი მეშვეობით საკითხის ტრეკერი.
TypeScript 4.1 ბეტა მხარდაჭერა
VS Code მხარს უჭერს TypeScript 4.1 ბეტა და ღამის შენობები. 4.1 განახლებას მოაქვს TypeScript ენის რამდენიმე ახალი ფუნქცია, როგორიცაა მხარდაჭერა რეკურსიული პირობითი ტიპები, ასევე ხელსაწყოების გაუმჯობესება. ერთი ფოკუსის სფერო იყო საწყისი მხარდაჭერის დამატება ამისთვის @იხილეთ
ტეგები JSDoc კომენტარებში.
TypeScript 4.1 ღამის ნაგებობების გამოყენების დასაწყებად, უბრალოდ დააინსტალირეთ TypeScript Nightly გაფართოება. გთხოვთ, გაგვიზიაროთ გამოხმაურება და შეგვატყობინოთ, თუ შეგხვდებათ რაიმე შეცდომა TypeScript 4.1-ში.
გაფართოების ავტორი
განახლებული გაფართოების ნიმუშები
ჩვენ განვაახლეთ ზოგიერთი ჩვენი გაფართოების ნიმუშები შეიცავდეს VS Code ნაგულისხმევ სტილებს, რომლებიც დაკავშირებულია ჩვენი ფერის თემის ჟეტონებთან. ეს ნიშნავს, რომ საერთო ელემენტები (ტექსტი, ღილაკები, შეყვანები) იქნება თემატური და ემთხვევა პროდუქტის ნაგულისხმევ სტილებს. ქვემოთ მოცემულია გაფართოებები, რომლებიც მოიცავს ამას:
- საბაჟო-რედაქტორი-ნიმუში
- webview-ნიმუში
- webview-view-sample
კოდიკონის ფერები ხეებში
დასრულებასთან ერთად თემის ხატულა
ფერადი API, გაფართოების ავტორებს შეუძლიათ გამოიყენონ თემის ფერები კოდიკონებზე მორგებული ხის ხედებში.
გლობალური მდგომარეობის სინქრონიზაცია
გაფართოებებს ახლა შეუძლიათ თავიანთი გლობალური მდგომარეობის სინქრონიზაცია გასაღებების მიწოდებით, რომელთა მნიშვნელობები სინქრონიზებული უნდა იყოს, როდესაც ჩართულია პარამეტრების სინქრონიზაცია, ახლად დანერგილის გამოყენებით. setKeysForSync
API in გლობალური სახელმწიფო
სამახსოვრო.
/** * დააყენეთ კლავიშები, რომელთა მნიშვნელობები სინქრონიზებული უნდა იყოს სხვადასხვა მოწყობილობებში მომხმარებლის მონაცემების სინქრონიზაციისას * როგორიცაა კონფიგურაცია, გაფართოებები და მემენტები. * * გაითვალისწინეთ, რომ ეს ფუნქცია განსაზღვრავს კლავიშების მთელ კომპლექტს, რომელთა მნიშვნელობები სინქრონიზებულია: * - ცარიელი მასივით გამოძახება აჩერებს სინქრონიზაციას ამ მემენტისთვის * - გამოძახება არა ცარიელი მასივი ანაცვლებს ყველა კლავიშს, რომელთა მნიშვნელობები სინქრონიზებულია * * კლავიშების ნებისმიერი მოცემული ნაკრებისთვის ამ ფუნქციის გამოძახება საჭიროა მხოლოდ ერთხელ, მაგრამ არაა საზიანო * მისი განმეორებით გამოძახება. * * @param keys გასაღებების ნაკრები, რომელთა მნიშვნელობები სინქრონიზებულია. */ setKeysForSync (გასაღებები: string[]): void;
კომენტარი გაფართოებებს ახლა შეუძლიათ აკონტროლონ პასუხის ღილაკის ხილვადობა კომენტარების თემაში ახალი თვისებით, კომენტარი თემა#შეიძლება პასუხის გაცემა
. როცა დაყენებულია ყალბი
, მომხმარებლები ვერ ნახავენ პასუხის ღილაკს ან კომენტარის ველს კომენტარების თემაში.
შემოთავაზებული გაფართოების API-ები
ყველა ეტაპს მოყვება ახალი შემოთავაზებული API და გაფართოების ავტორებს შეუძლიათ სცადონ ისინი. როგორც ყოველთვის, გვსურს თქვენი გამოხმაურება. ეს არის ის, რაც უნდა გააკეთოთ იმისათვის, რომ სცადოთ შემოთავაზებული API:
- თქვენ უნდა გამოიყენოთ Insiders, რადგან შემოთავაზებული API ხშირად იცვლება.
- თქვენ უნდა გქონდეთ ეს ხაზი
პაკეტი.json
თქვენი გაფართოების ფაილი:"enableProposedApi": მართალია
. - დააკოპირეთ უახლესი ვერსია
vscode.proposed.d.ts
შეიყვანეთ თქვენი პროექტის წყაროს ადგილას.
თქვენ არ შეგიძლიათ გამოაქვეყნოთ გაფართოება, რომელიც იყენებს შემოთავაზებულ API-ს. შეიძლება იყოს მნიშვნელოვანი ცვლილებები შემდეგ გამოშვებაში და ჩვენ არასდროს გვინდა არსებული გაფართოებების დარღვევა.
დასაკეცი დიაპაზონის პროვაიდერები ცვლის მოვლენას
დასაკეცი დიაპაზონის პროვაიდერებს შეუძლიათ რედაქტორს მიაწოდონ სიგნალი, რომ დასაკეცი დიაპაზონები უნდა განახლდეს გამოყენებით onDidChangeFoldingRanges
ღონისძიება.
დამატებითი ინფორმაციისთვის და გამოხმაურებისთვის, გთხოვთ, გამოიყენოთ ნომერი #108929.
პაროლის API-ები
როგორც გაგრძელებული მუშაობის ნაწილი ავტორიზაციის პროვაიდერები, ჩვენ შემოვიღეთ API მგრძნობიარე ინფორმაციის შესანახად და მოსაპოვებლად. შინაგანად, ეს მოქმედებს როგორც შეფუთვა კლავიატურა ბიბლიოთეკა, რომელსაც VS Code იყენებს საიდუმლოების შესანახად.
/** * მოიძიეთ პაროლი, რომელიც შენახული იყო გასაღებით. აბრუნებს განუსაზღვრელს, თუ არ არის * ამ კლავიშის შესაბამისი პაროლი. * @param გასაღები გასაღები, რომლის ქვეშ იყო შენახული პაროლი. */ ექსპორტის ფუნქცია getPassword (გასაღები: string): Afterable; /** * შეინახეთ პაროლი მოცემული გასაღების ქვეშ. * @param გასაღები პაროლის შენახვის გასაღები * @param მნიშვნელობა პაროლი */ ექსპორტის ფუნქცია setPassword (გასაღები: string, მნიშვნელობა: string): შემდეგ შესაძლებელია; /** * პაროლის ამოღება საცავიდან. * @param გასაღები გასაღები, რომლის ქვეშ იყო შენახული პაროლი. */ ექსპორტის ფუნქცია deletePassword (გასაღები: სტრიქონი): შემდეგ შესაძლებელია; /** * ირთვება პაროლის დაყენების ან წაშლისას. */ ექსპორტის const onDidChangePassword: მოვლენა;
ინჟინერია
VS Code Trusted Types-ის შესაბამისობა
ჩვენ გავაგრძელეთ ძალისხმევა, რათა VS კოდექსის "სანდო ტიპები" შესაბამისი გავხადოთ. მიზანია თავიდან აიცილოს DOM-ზე დაფუძნებული ჯვარედინი საიტის სკრიპტირების დაუცველობა. შეგიძლიათ მეტი შეიტყოთ სანდო ტიპების შესახებ web.dev-ზე სანდო ტიპების საიტი და თვალყური ადევნეთ ჩვენს პროგრესს ნომერი #103699.