ปัญหา: การเคลื่อนย้ายเส้นแนวตั้งจะเป็นการพับในแนวตั้ง


9

เมื่อฉันย้ายเส้นที่มีm(เช่น:m+1) รอยพับของฉันทั้งหมดจะถูกปิด ฉันสามารถเปิดฝาพับได้zvอีกครั้งและเคอร์เซอร์จะอยู่ในตำแหน่งที่ฉันเลื่อนไป ฉันใช้การพับด้วย{{{ }}}เครื่องหมายและมีset foldmethod=markerใน. vimrc ของฉัน

ฉันจะป้องกันเสียงเรียกเข้าไม่ให้ปิดการพับเมื่อเคลื่อนที่เป็นเส้นได้อย่างไร


1
vim -u NONE -U NONE -Nฉันไม่สามารถทำซ้ำนี้โดยใช้ อาจเป็นปัญหากับ vimrc หรือปลั๊กอินของคุณ
EvergreenTree

2
เกิดขึ้นกับฉันแม้ด้วย -u NONE -U NONE -N ฉันใช้ v7.4 บน arch linux
dnieder

1
@EvergreenTree ฉันมีปัญหาเดียวกัน ด้วยและตั้งค่าเพียงvim -u NONE -U NONE -N fold-test foldmethod=markerฉันใช้ Vim 7.4.712 บน Arch ถ้าฉันลองแบบเดียวกันกับ Vim บน Vim 7.4.160 บน CentOS 7 ฉันจะได้ผลลัพธ์ที่ตรงข้ามกัน (ทุกครั้งที่เปิดเมื่อใช้งาน:m+1) และกลุ่ม 7.2.441 บน CentOS 6 ทำงานได้ดี ... fold*การตั้งค่าทั้งหมดดูเหมือนจะเหมือนกันในเครื่องเหล่านี้
Martin Tournoij

1
มันแปลกมาก ดูเหมือนว่าจะเป็นข้อผิดพลาด
EvergreenTree

3
ที่อาจเกิดจากแพทช์ 7.4.700 ซึ่งพยายามป้องกันไม่ให้พับที่ได้รับไม่ถูกต้องเมื่อ: คำสั่งย้าย
Christian Brabandt

คำตอบ:


2

คุณสามารถปิดพับก่อนที่จะทำโดยใช้:m+1 และจากนั้นเปิดใช้งานได้อีกครั้งกับzizi

คุณยังสามารถเพิ่มการจับคู่พิเศษสำหรับสิ่งนั้นใน. vimrc ของคุณ:

""move line up/down with Shift+up/down
nnoremap <S-Up> zi:m-2<CR>zi
nnoremap <S-Down> zi:m+<CR>zi
inoremap <S-Up> <Esc>zi:m-2<CR>zia
inoremap <S-Down> <Esc>zi:m+<CR>zia

สิ่งนี้ใช้ได้สำหรับฉัน (แม้ว่าฉันจะใช้การผูกที่แตกต่างกัน)
IanEdington

1

การพับเป็นกลไกที่ค่อนข้างซับซ้อน (ดูคำตอบอื่นที่ฉันบอกไว้เกี่ยวกับการพับสำหรับการอภิปรายที่เหมาะสมยิ่งของการสแกนพับ)

เพื่อให้คำตอบที่สมบูรณ์เราจะต้องดูว่าคุณกำลังโหลดปลั๊กอินประเภทใดเมื่อทำการบูทอินสแตนซ์ของ vim

ฉันพนันได้เลยว่ามีปลั๊กอินบางตัวที่ล้อเล่นกับการตั้งค่า vim ที่เป็นค่าเริ่มต้น ( vim -u NONEควรทำซ้ำสิ่งนี้) ปลั๊กอินใด ๆ ที่เปลี่ยนแปลงfoldmethodอาจเป็นสาเหตุได้ (ฉันพยายามลบออก 1 ต่อ 1 และดูว่าอะไรทำให้เกิดปัญหา)

หากคุณไม่ต้องการโคลนกับปลั๊กอินของคุณเลยฉันขอแนะนำให้ปรับแต่งการตั้งค่าไวยากรณ์ + การแยกวิเคราะห์ด้วยตนเองแล้วเปิดบัฟเฟอร์ทดสอบเพื่อยืนยันการทำงานของคุณ มันอาจเป็นการเดินทางที่น่าหงุดหงิดที่จะทำให้มันเล่นได้ดี แต่ด้วยการขุดอย่างไม่หยุดยั้งในตัว:helpคุณคุณควรจะสามารถทะเลาะกับสัตว์ร้ายที่ถูกพับ

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