VS Code - เพิ่มไฟล์ใหม่ภายใต้ไดเร็กทอรีการทำงานที่เลือก


97

ฉันกำลังพยายามหาทางลัดเพื่อเพิ่มไฟล์ใหม่ในโฟลเดอร์ที่ทำงานปัจจุบัน ดังนั้นฉันจึงไปที่ explorer โดยใช้cmd+shift+eและเมื่อฉันไปที่โฟลเดอร์ฉันต้องการสร้างคลาสใหม่ที่ฉันทำcmd+nซึ่งจะสร้างไฟล์ใหม่ให้ฉัน แต่ไม่ได้บันทึกไว้ที่ใดก็ได้ (ฉันพยายามรับพฤติกรรมที่คล้ายกับสิ่งที่ ReSharper ทำเช่น ).

มีทางลัดอื่นในการรับไฟล์ที่สร้างขึ้นภายใต้โฟลเดอร์ที่คุณมีโฟกัสใน explorer หรือไม่? โดยพื้นฐานแล้วฉันต้องการให้กล่องข้อความกรอกชื่อจากนั้นไฟล์จะได้รับการบันทึกโดยอัตโนมัติเพื่อที่ฉันจะไม่ได้รับข้อความแจ้งในภายหลัง

ฉันใช้เพื่ออ้างอิงหน้าต่อไปนี้: https://code.visualstudio.com/docs/customization/keybindings

คำตอบ:


219

cmd+nคำสั่งโดยค่าเริ่มต้นผูกพันที่จะworkbench.action.files.newUntitledFileแต่สิ่งที่คุณต้องการคือคำสั่งexplorer.newFileซึ่งเริ่มต้นโดยไม่ได้ผูกไว้กับทางลัด

แก้ไขไฟล์ทางลัด

ตีCmd+ Shift+ pชนิดkeyและกด Enter บนPreferences: Open Keyboard Shortcuts (JSON)

สิ่งนี้จะเปิดไฟล์keybindings.jsonซึ่งเก็บการเชื่อมโยงคีย์แบบกำหนดเองที่ระบุโดยผู้ใช้ VS Code ปัจจุบัน

ป้อนสิ่งต่อไปนี้ในไฟล์การผูกที่กำหนดเอง (น่าจะต้องป้อนcmd+nแทนctrl+nแต่ฉันใช้ windows จึงไม่สามารถทดสอบได้

[
  { "key": "ctrl+n", "command": "explorer.newFile" }
]

หากคุณต้องการให้สิ่งนี้ใช้ได้เฉพาะเมื่อนักสำรวจโฟกัสอยู่คุณสามารถเพิ่มเงื่อนไขเมื่อ:

{ "key": "ctrl+n", "command": "explorer.newFile", "when": "explorerViewletFocus" }

วิธีนี้เมื่อคอมโพเนนต์อื่น ๆ เน้นการกดCtrl+ nจะเรียกใช้คำสั่งไฟล์ใหม่เริ่มต้น

แก้ไขโดยใช้ UI ทางลัด

ตีCmd+ Shift+ pชนิดkeyและกด Enter บนPreferences: Open Keyboard Shortcuts

สิ่งนี้จะเปิด UI การตั้งค่าแป้นพิมพ์ลัด

พิมพ์explorer.newFileการค้นหาเพื่อค้นหาคำสั่งไฟล์ใหม่ดับเบิลคลิกเพื่อเปิดโมดอลการจับภาพทางลัดและกดคีย์ผสมที่คุณต้องการเชื่อมโยงกับคำสั่งนี้


1
นั่นคือสิ่งที่ฉันกำลังมองหา ขอบคุณมากสำหรับสิ่งนี้!
Carlos Torrecillas

1
เรียบง่าย แต่ทรงพลัง! ขอบคุณ!
kolrie

2
สิ่งนี้จะสร้างไฟล์ใหม่ในโฟลเดอร์ที่โฟกัสอยู่ในขณะนี้ เป็นไปได้ไหมที่จะสร้างไฟล์ใหม่จากรูทโปรเจ็กต์
Oliver Joseph Ash

มีเหตุผลอะไรที่"key": "a"ไม่ได้ผล? มันทำงานได้เพียง แต่ถ้าผมทำcmd+n
แกรนท์

@OliverJosephAsh ส่วนขยายนี้จะทำเพื่อคุณ: marketplace.visualstudio.com/… . ช่วยให้คุณพิมพ์เส้นทางที่แน่นอนโดยสัมพันธ์กับรูทโปรเจ็กต์ที่คุณต้องการสร้างไฟล์ (หรือหลายไฟล์พร้อมกัน)
SUM1

19

ในการเพิ่มไฟล์หรือโฟลเดอร์ให้เพิ่มบรรทัดต่อไปนี้keybindings.json:

อัปเดตคำตอบเมื่อ 2020/02/10 (ขอบคุณ @AbrahamHernandez ผู้ให้ความคิดเห็น)

[
  { "key": "ctrl+n",
    "command": "explorer.newFile",
    "when": "!editorFocus" },

  { "key": "ctrl+shift+n",
    "command": "explorer.newFolder",
    "when": "!editorFocus" }
]

การเชื่อมโยงเหล่านี้ใช้งานได้หากตัวแก้ไขไม่ได้เน้น

นอกจากนี้ยังถูกทริกเกอร์หากหน้าต่างดีบักทำงานอยู่ ไม่สมบูรณ์แบบ แต่explorerFocusจะมีการเพิ่มบริบทในอนาคตอันใกล้: ดู GitHub


สิ่งนี้ไม่ได้ผลสำหรับฉัน: workbench.actionไม่พบสิ่งนี้ให้ฉัน
abranhe

1
@AbrahamHernandez ลองเปลี่ยนคำสั่งเป็นexplorer.newFileและexplorer.newFolder
mysl

5

คุณสามารถใช้วิธีนี้หากคุณไม่ต้องการสร้างทางลัด

  1. ไปที่ explorer ผ่านcmd+ shift+e
  2. ไปที่โฟลเดอร์ที่คุณต้องการสร้างไฟล์ / โฟลเดอร์ใหม่
  3. เปิดตัวเลือกไฟล์ผ่านcmd+ shift+p
  4. จากนั้นพิมพ์New FileหรือNew Folderและป้อน

นั่นคือวิธีที่คุณสร้างไฟล์ / โฟลเดอร์ใหม่โดยไม่ต้องสัมผัสเมาส์ :)


1
ฉันไปที่แป้นพิมพ์ลัด (เปิดด้วยctrl+K ctrl+S) และเพิ่มแป้นพิมพ์ลัดexplorer.newFileเพื่อข้ามขั้นตอนที่ 3 และ 4
Rafi

ฉันคิดว่าขั้นตอนที่ 3 ควรเป็นcmd+shift+pอย่างไร?
Rafi

1
@Rafi คุณพูดถูก ฉันเพิ่มไปยังข้อความ ขอบคุณ.
Fatih Bulut

0

คุณสามารถทำได้ในสองขั้นตอน:

  1. Cmd + Shift + E: เปิด explorer ด้วย
  2. Ctrl + N: สร้างไฟล์ใหม่ภายใต้โฟลเดอร์ปัจจุบันและตั้งชื่อ

จริงๆแล้วฉันชอบแนวทางนี้มากกว่าการคลิกเพียงครั้งเดียวเพราะแต่ละขั้นตอนชัดเจนกว่าและคุณไม่ต้องกำหนดค่าอะไรเลย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.