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

Vim เป็นตัวแก้ไขข้อความที่สามารถกำหนดค่าได้อย่างสูงซึ่งสร้างขึ้นเพื่อให้สามารถแก้ไขข้อความได้อย่างมีประสิทธิภาพ มันเป็นเวอร์ชันปรับปรุงของตัวแก้ไข vi

1
MacVim - วิธีทำให้การเลือกโดยใช้เมาส์เป็น "โหมดภาพ"?
บางครั้งฉันเลือกข้อความเป็นกลุ่มโดยใช้เมาส์ ฉันต้องการให้การเลือกนั้นได้รับการปฏิบัติเช่นเดียวกับการเลือกโหมดภาพดังนั้นฉันสามารถเริ่มใช้คำสั่งกับมัน มีวิธีที่ฉันสามารถทำได้ใน MacVim หรือไม่? แก้ไข: ฉันได้ลองใช้ mouse=a และดูเหมือนจะไม่ช่วย หากฉันเลือกข้อความโดยใช้โหมดภาพและแป้นพิมพ์เมื่อฉันงัดมันด้วยการพิมพ์ 'y' ข้อความจะสูญเสียการเลือก แต่ไม่ลบออกจากบัฟเฟอร์ เมื่อฉันทำมันด้วยเมาส์ข้อความจะถูกลบ
1 vim  gvim  macvim 

2
สลับเป็นกลุ่มตามค่าก่อนหน้า var
วิธีการเปลี่ยนค่าของ mouse จากที่ว่างเปล่าถึง a และในทางกลับกัน? ฉันพบว่าตัวเองเปลี่ยนไปมากจากสองโหมดนี้ a ดีมากเมื่อฉันอยู่ในไฟล์แหล่งข้อมูลขนาดใหญ่มาเป็นเวลานานและต้องใช้ล้อเลื่อนเพื่อนำทางเป็นต้น แต่โหมดเมาส์โง่นั้นสมบูรณ์แบบในการคัดลอก / วางจากที่ใดก็ได้ไปยังทุกที่ ฉันมีอยู่ใน. vimrc ของฉัน: nmap <F11> :se mouse=<CR> nmap <F12> :se mouse=a<CR> แต่จะดีกว่าถ้าได้ F11 ฟรีอีกครั้ง (ฉันออกจากปุ่ม F) และเปลี่ยน F12 เป็นค่านั้น ... ทุกคนมีสูตรสำหรับประโยชน์นั้น?
1 vim 

1
vim spellcheck: คำสั่งหรือฟังก์ชันเพื่อดัมพ์คำที่ไม่เหมาะสมทั้งหมดไปยังไฟล์
ฉันต้องแก้ไขไฟล์ที่มีข้อผิดพลาดในการสะกดบ่อยๆ ตรวจการสะกดแท็กคำเหล่านี้ทั้งหมด แต่มีคำสั่งหรือฟังก์ชั่นภายในกลุ่มที่จะทิ้งคำที่ติดแท็กเหล่านี้ไปยังไฟล์หรือไม่

1
ใช้การนับกับคำสั่งที่แม็พ
ฉันต้องการที่จะเข้าร่วมทุกสี่บรรทัดของไฟล์เป็นบรรทัดเดียว ฉันสามารถทำได้โดยพิมพ์: JJJj เนื่องจากฉันจะทำอย่างนั้นซ้ำ ๆ ฉันจึงจับคู่มันกับกุญแจ: map <F5> JJJj ตอนนี้ฉันสามารถกดค้างไว้ F5 และใช้งานได้ แต่มันจะใช้เวลาตลอดทั้งวันกว่าจะผ่านไฟล์นี้ได้ มีวิธีที่ฉันสามารถบอกเป็นกลุ่มเพื่อดำเนินการ JJJj หลายครั้ง? 100<F5> ไม่ทำงาน.
1 vim 

1
VIM ในเชลล์เรียกคีย์ d แต่ GVIM ทำงานได้
ฉันมีปัญหาแปลกกับเสียงเรียกเข้าของฉัน ในเชลล์เมื่อฉันแก้ไขไฟล์ทริกเกอร์ VIM ของฉัน ( อาจ ) ปุ่ม d (กำลังทำงาน vim test.txt ) เมื่อฉันกด j เขาจะลบ 2 บรรทัดแรก ทุกอย่างใช้ได้ดีเมื่อฉันรันโดยไม่มีไฟล์. vimrc ของฉัน (ดังนั้นฉันคิดว่านั่นเป็นความผิดของฉัน) หรือเมื่อฉันรัน gvim ไฟล์. vimrc ของฉัน ไดเรกทอรี. vim ของฉัน (ไฟล์ vimrc ถูกแมปเป็น symlink ในระบบ)
1 linux  vim  shell 

2
อะไรที่ทำให้ VIM เป็นเครื่องมือแก้ไขข้อความที่ทรงพลัง? [ปิด]
ฉันอ่านรอบ ๆ เว็บและหลายคนมักจะชื่นชม emacs และ VIM สำหรับพลังและความเข้ากันได้ของพวกเขา แต่เพื่อให้เฉพาะเจาะจงมากขึ้นฉันต้องการเน้น VIM อะไรทำให้เอนกประสงค์ คุณลักษณะใดที่ทำให้มีประสิทธิภาพมาก มีบางสิ่งที่เฉพาะเจาะจงที่ทำให้ผู้ใช้หลงรักอย่างมากหรือไม่? หรือเป็นความจริงง่ายๆที่มีมานานแล้วว่ามีการสนับสนุนมากมายและมีการพัฒนาปลั๊กอินจำนวนมหาศาล

1
เป็นกลุ่ม: ย้ายไปที่รูปแบบโดยไม่ต้องเปลี่ยนรูปแบบปัจจุบัน
ในขณะที่แก้ไขไฟล์ขนาดใหญ่ฉันต้องเลื่อนไปตามการค้นหารูปแบบ (แม้ฉันจะใช้ ctags, cscope, Lid) แต่ฉันไม่ต้องการรบกวนการค้นหาไฮไลต์ปัจจุบันขณะทำเช่นนั้น เหตุผลที่เป็นรูปแบบที่ฉันจะใช้เป็นช่วงเวลาสั้น ๆ และฉันจะต้องเรียกคืนรูปแบบสุดท้ายด้วยตนเองอีกครั้ง ให้ฉันอธิบายด้วยตัวอย่าง หากฉันมีไฟล์ดังต่อไปนี้: 1 #include <stdio.h> 2 3 int main(int argc, char **argc) 4 { 5 printf("Hello World") 6 foo(); 7 return 0; 8 } 9 10 void foo(void) 11 { 12 printf("Just another function with no declaration yet\n"); 13 } สมมติว่าเคอร์เซอร์อยู่ที่บรรทัด …
1 vim 

1
เกี่ยวกับ Vim and Mark Plugin
มีปลั๊กอินที่ดี เครื่องหมาย ซึ่งสามารถไฮไลต์ได้หลายคำ สีเริ่มต้นที่กำหนดไว้ของมาร์คมีเพียงหกสี ตามเอกสารเราสามารถเพิ่มสีใด ๆ ที่เราต้องการ highlight def MarkWord1 ctermbg=Cyan ctermfg=Black guibg=#8CCBEA guifg=Black highlight def MarkWord2 ctermbg=Green ctermfg=Black guibg=#A4E57E guifg=Black highlight def MarkWord3 ctermbg=Yellow ctermfg=Black guibg=#FFDB72 guifg=Black highlight def MarkWord4 ctermbg=Red ctermfg=Black guibg=#FF7272 guifg=Black highlight def MarkWord5 ctermbg=Magenta ctermfg=Black guibg=#FFB3FF guifg=Black highlight def MarkWord6 ctermbg=Blue ctermfg=Black guibg=#9999FF guifg=Black highlight …
1 vim  gvim 

1
เป็นกลุ่มและ macvim ไม่ได้อ่านไดเรกทอรี. vim ของฉัน
ฉันได้ติดตั้งเป็นกลุ่มและ macvim โดยใช้ macports และลองคัดลอกไปยังไดเรกทอรี. vim ของฉันจาก linux ดูเหมือนว่าจะไม่อ่านอะไรจากไดเรกทอรีนั้น: การปรับแต่งของฉันสำหรับการพับและการเยื้องไม่ทำงานและ: สคริปต์ชื่อแสดงเฉพาะไดเรกทอรีปลั๊กอินทั่วทั้งระบบ / usr / share เท่านั้นที่กำลังอ่านอยู่ ความคิดใด ๆ ที่เกิดขึ้นและวิธีการแก้ไขหรือไม่
1 macos  vim  macports  macvim 

1
ซ่อนการสำรองข้อมูลของ vim ด้วยจุดในตอนต้นของชื่อไฟล์สำรอง
ฉันมีบรรทัดต่อไปนี้ในของฉัน ~/.vimrc set backup ดังนั้นทุกครั้งที่ฉันแก้ไขไฟล์ foo ด้วย vim ไฟล์สำรอง foo~ ถูกสร้างขึ้น จากนั้นผลลัพธ์ของ ls มีมลภาวะ ฉันต้องการให้เป็นกลุ่มเพื่อให้ชื่อสำรองเริ่มต้นด้วยจุด .. จากนั้นข้อมูลสำรองจะถูกซ่อน เป็นไปได้ไหม
1 vim  backup  dotfiles 

2
ปัญหาภาษา VIM UI
ฉันใช้ VIM อยู่พักหนึ่ง แต่ก็ไม่เคยเจอปัญหาแบบนี้ เมื่อฉันเชื่อมต่อกับเดสก์ท็อปพีซี Ubuntu ผ่าน ssh จากแท็บเล็ต (Asus tf Prime) โดยใช้เทอร์มินัลอีมูเลเตอร์ (หน้าจอ 256 สี) ฉันได้รับ vim ของฉันเป็นภาษาจีน ... บนเดสก์ท็อป ฉันพยายามที่จะตั้ง set langmenu=en_US.UTF-8 language en_US.UTF-8 แต่มันไม่ได้ช่วย ... ดูภาพหน้าจอ คุณอาจพบการกำหนดค่าของฉันในGitHub
1 ubuntu  ssh  vim  terminal 

2
เป็นกลุ่มเริ่มต้นที่จะบันทึกบัฟเฟอร์เมื่อได้รับสัญญาณ TERM
ฉันใช้ vim หลายอินสแตนซ์ ปัจจุบันฉันใช้ฟังก์ชั่นทุบตี kv(){ a=($(pgrep vim)); kill ${a[@]}; } เพื่อยุติอินสแตนซ์ที่เรียกใช้ทั้งหมดของ vim สิ่งนี้มีข้อเสียเปรียบในการออกจากไฟล์. swp ที่ไม่แน่นอนที่ใดก็ตามที่กลุ่มถูกฆ่าด้วยการเปลี่ยนแปลงที่ไม่ได้บันทึก มีวิธีตั้งค่ากลุ่มให้บันทึกบัฟเฟอร์ของมันหรือไม่ถ้ามันส่งสัญญาณ kill?
1 bash  vim 

1
วิธีทริกเกอร์การจับคู่คีย์ autocmd ของ VIM สำหรับไฟล์. js หรือ. pl
การใช้ VIM (MacVim เพื่อเจาะจง) ฉันพยายามเพิ่มทางลัดไปยังไฟล์. vimrc ของฉันที่มีไวยากรณ์ต่างกันในภาษาต่างๆ ฉันใช้ autocmd เพื่อเพิ่มการแมปคีย์ที่แตกต่างกันขึ้นอยู่กับประเภทไฟล์ แต่จาวาสคริปต์และไฟล์ประเภท Perl. js และ. pl ไม่ได้รับการแมป ความพยายามของฉันที่จะมี / แสดงความคิดเห็นจากบล็อกที่เลือกแบบเห็นได้ autocmd FileType php,js,java,cpp vnoremap <buffer> / :s/^/\/\/ /<cr>gv autocmd FileType php,js,java,cpp vnoremap <buffer> ? :s/^\s*\/\/ \?//<cr>gv autocmd FileType sql vnoremap <buffer> / :s/^/-- /<cr>gv autocmd FileType sql vnoremap <buffer> ? :s/^--\s\?//<cr>gv …
1 vim  macvim 


1
เป็นกลุ่มกลับไปยังจุดสุดท้ายในไฟล์
ใครสามารถให้คำอธิบายเกี่ยวกับสิ่งที่กำลังทำอยู่หรือชี้ให้ฉัน vimdocs? line("'\"") function! ResCur()$ if line("'\"") <= line("$") normal! g`" return 1 endif$ endfunction ฟังก์ชั่นนี้มีไว้สำหรับส่งคืนคาเร็ตไปยังบรรทัดเดียวกันเมื่อเปิดไฟล์
1 vim  vimrc 

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