คำถามติดแท็ก vim-windows

หน้าต่างเป็นกลุ่มเป็นมุมมองของบัฟเฟอร์ หน้าแท็บประกอบด้วยหนึ่งหน้าต่างขึ้นไป สำหรับคำถามเกี่ยวกับการโต้ตอบกับระบบปฏิบัติการ Microsoft ให้ใช้ [microsoft-windows] สำหรับคำถามเกี่ยวกับการโต้ตอบกับระบบหน้าต่างของเดสก์ทอปให้ใช้ [การจัดการหน้าต่าง]

4
ย้ายหน้าต่างที่มีอยู่ไปยังแท็บที่มีอยู่
บางครั้งฉันต้องการย้ายหน้าต่างไปยังแท็บที่มีอยู่แล้วและฉันสงสัยว่ามีคำสั่ง / แป้นพิมพ์ลัดที่สามารถทำได้ ฉันรู้ว่าฉันสามารถปิดหน้าต่างสลับไปที่แท็บแล้วเปิดในการแยกใหม่ แต่ฉันสงสัยว่ามีวิธีที่สั้นกว่าในการบรรลุเป้าหมายนี้ โปรดทราบว่าฉันต้องการย้ายไปยังแท็บที่มีอยู่ไม่ใช่แท็บใหม่อย่างที่เป็น<C-w>Tอยู่

2
เป็นไปได้ไหมที่จะบอกว่าหน้าต่างอยู่ด้านล่างหรือด้านบนซ้ายหรือขวา?
ฉันไม่รู้ว่ามีฟังก์ชั่นบางอย่างเพื่อตรวจสอบตำแหน่งของหน้าต่างหรือไม่ฉันหมายความว่ามันกำลังนั่งอยู่ที่ด้านล่างหรือด้านบนซ้ายหรือขวาหรือไม่? __________________________ | | | | | | | left | right | | | | | | | |___________|____________| __________________________ | | | top | |________________________| | | | bottom | |_______________________ |

3
ฉันจะทำให้ windows ของฉันกลับมาเป็นรูปแบบกริดได้อย่างไร
ถ้าฉันมี windows จัดเป็นสี่ quadrants จากลำดับของคำสั่งต่อไปนี้: :tabnew :vsplit :split <C-W>l :split จากนั้นการป้อนคำสั่งเช่น<C-W>Jจะทำให้สิ่งเหล่านี้ไม่เป็นรูปสี่เหลี่ยมอีกต่อไป ในกรณีนี้มันจะบังคับให้หนึ่งหน้าต่างลอยที่ด้านล่าง ฉันจะทำในสิ่งที่ตรงกันข้ามได้หรือไม่ - นั่นคือบังคับให้หน้าต่างกลับสู่รูปแบบสี่เหลี่ยม? ฉันอ่านแล้ว:help window-movingแต่ไม่เห็นสิ่งใดมีประโยชน์


1
รับหน้าต่าง / บัฟเฟอร์ / แท็บปัจจุบันใน Vimscript
ในไพ ธ อนเมื่อใช้โมดูล vim มันง่ายอย่างไม่น่าเชื่อที่จะได้หน้าต่าง / บัฟเฟอร์ / แท็บปัจจุบัน: current_win = vim.current.window current_buff = vim.current.buffer current_tabpage = vim.current.tabpage คำถามของฉันคือคุณจะทำสิ่งนี้ใน VimL / Vimscript บริสุทธิ์และวัตถุชนิดใดที่ถูกส่งคืน? ฉันไม่สามารถพบสิ่งนี้ได้ทุกที่ในwindows.txt( :h windows)

1
ฉันจะหยุดหน้าต่างของฉันไม่ให้เคลื่อนไหวเมื่อใช้ vsplit ได้อย่างไร
เมื่อใช้:vsplitหน้าต่าง gvim ของฉันข้ามไปยังตำแหน่งหน้าจอเฉพาะ ฉันจะหยุดสิ่งนี้ไม่ให้เกิดขึ้นได้อย่างไร สิ่งเดียวกันนี้เกิดขึ้นเมื่อการแยกตัวที่สองถึงครั้งสุดท้ายถูกปิด ฉันใช้ gvim บน Windows

3
เป็นไปได้หรือไม่ที่จะมีเอาท์พุตเป็น:! คำสั่งในการแยกมากกว่าทั้งหน้าต่าง?
หากฉันมีเซสชันเป็นกลุ่มที่มีสองแยกเมื่อฉันรัน:!คำสั่งผลลัพธ์จะปรากฏในหน้าต่างทั้งหมด เป็นไปได้หรือไม่ที่จะแสดงผลลัพธ์เฉพาะส่วนแบ่งที่ใช้งานอยู่


2
วิธีการทำแผนที่ซ้ำเมื่อกดปุ่มค้าง
ฉันมี.vimrcการแมปแบบง่าย ๆ เพื่อปรับขนาดหน้าต่างแยกได้อย่างง่ายดาย: noremap <Leader><UP> <C-w>+ noremap <Leader><DOWN> <C-w>- มันใช้งานได้ดี แต่เมื่อฉันต้องการปรับขนาดหน้าต่าง 10 บรรทัดฉันต้องกดและปล่อยLeader+ UP10 ครั้ง ฉันจะทำซ้ำการแมปนี้ในขณะที่กดปุ่มได้อย่างไร สิ่งที่ฉันต้องการคือเมื่อฉันกดLeader+ UPการแมปจะถูกนำไปใช้หนึ่งครั้งหลังจากนั้นในช่วงเวลาสั้น ๆ มันจะถูกนำไปใช้อีกครั้งและอื่น ๆ ในขณะที่ฉันกดปุ่มค้างไว้ หมายเหตุ:ฉันรู้ว่าเป็นไปได้ที่จะนำหน้า<C-w>+ด้วยการนับและฉันสามารถเข้ารหัสในการทำแผนที่หรือเพียงแค่ใส่จำนวนก่อนที่จะใช้การทำแผนที่ แต่นั่นไม่ใช่วิธีที่ฉันต้องการจะทำ Note2:ฉันรู้ว่าการแมปยอดนิยมเพื่อปรับขนาดหน้าต่างคือการใช้+และ-ปุ่มที่กดได้ง่ายกว่าหลายครั้ง แต่ฉันไม่ต้องการใช้ปุ่มเหล่านั้นเพื่อทำเช่นนั้น

1
ทำไม: bd # ลบบัฟเฟอร์ปัจจุบันเมื่อไม่มีบัฟเฟอร์สำรองอยู่?
นี่คือวิธีที่ฉันทำซ้ำพฤติกรรมที่ฉันสังเกต ก่อนอื่นฉันป้อนคำสั่งนี้: echo aaaaa > a vim a ในกลุ่มฉันป้อนคำสั่งเหล่านี้: :ls :e # :echo bufname('#') นี่คือผลลัพธ์ของคำสั่งทั้งสามข้างต้น: :ls 1 %a "a" line 1 :e # E194: No alternate file name to substitute for '#' :echo bufname('#') bufname('#')คำสั่งผลิตออกไม่มี ตอนนี้ฉันป้อนคำสั่งนี้: :bd # บัฟเฟอร์ปัจจุบันจะถูกลบและจะถูกแทนที่ด้วยบัฟเฟอร์ "[ไม่มีชื่อ]": :ls 2 %a "[No Name]" line 1 ผมคาดหวังว่าจะได้รับข้อผิดพลาดในการดำเนินการE194 :bd #เพราะเหตุใดจึงลบบัฟเฟอร์ปัจจุบันแทน …

1
บัฟเฟอร์เทียบกับแท็บ vs arglist เทียบกับ windows
ทางเลือกมากมาย! สับสนมาก! เมื่อใดจึงควรใช้ค่าอื่น สิ่งเหล่านี้เกี่ยวข้องกันอย่างไร ความแตกต่างระหว่างพวกเขาคืออะไร? พวกเขามีผลต่อคำสั่งที่คุณพิมพ์อย่างไร พวกเขาเกี่ยวข้องกับการลงทะเบียนแมโครเครื่องหมายตัวเลือกและประวัติคำสั่งอย่างไร สิ่งใดที่อยู่ข้างในซึ่งผู้อื่นตัวอย่างเช่นแท็บคือส่วนย่อยของหน้าต่างเหมือนในโปรแกรม GUI ทั่วไปหรือเป็นหน้าต่างส่วนย่อยของแท็บ สิ่งนี้เกี่ยวข้องกับอาร์กิวเมนต์บรรทัดคำสั่ง (อาร์กิวเมนต์หลายรายการ) ที่สามารถเข้าถึงได้ผ่าน:nextและ:prevอย่างไร และสุดท้ายสิ่งใดที่viเข้ากันได้(ถ้ามี) นี้

4
การสลับบัฟเฟอร์. c / .h
ปกติฉันทำงานกับ 2 windows แยกในแนวตั้ง ปัญหาที่ฉันต้องการแก้ไขคือ: ข้ามไปมาอย่างง่ายดายจากส่วนหัวของไฟล์การใช้งาน <-> ฉันกำลังตรวจสอบโดยไม่มีโชค 2 วิธีในการทำสิ่งนี้: เปิดไฟล์สำรองในหน้าต่างปัจจุบัน : มีหลายวิธีในการทำเช่นนี้อย่างไรก็ตามฉันไม่สามารถหาวิธีที่จำตำแหน่งที่ฉันอยู่ในไฟล์ก่อนหน้าได้ (เช่นข้ามไปที่ส่วนหัวข้ามกลับ แต่ไม่ใช่ตำแหน่งเดียวกับที่ฉันเป็น ) เปิดไฟล์ทางเลือกในหน้าต่างอื่น : นี่เป็นคำจำกัดความที่ดีเนื่องจากฉันใช้งานได้เพียง 2 windows เท่านั้น แต่ฉันไม่มีความรู้เรื่องการทำสิ่งนี้
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.