ฉันจะลบบล็อกข้อความขนาดใหญ่โดยไม่นับบรรทัดได้อย่างไร


91

ในกลุ่มฉันมักจะต้องลบหรือดึง / ใส่บล็อกข้อความขนาดใหญ่

ฉันสามารถนับบรรทัดข้อความและป้อนสิ่งที่ต้องการ50ddลบ 50 บรรทัด

แต่นั่นเป็นความเจ็บปวดเล็กน้อย ฉันจะลบบล็อคข้อความขนาดใหญ่นี้ได้โดยไม่ต้องรู้ว่าต้องลบกี่บรรทัดล่วงหน้า?


4
คุณจะรู้ได้อย่างไรว่าจุดจบอยู่ตรงไหน? หากคุณสามารถอธิบายจุดสิ้นสุดคุณสามารถลบจุดนั้นได้ หากคุณสามารถอธิบายถึงวิธีการที่จะสามารถmoveจบ จากนั้นการลบไปยังจุดสิ้นสุดไม่ต่างไปจากการย้ายไปยังจุดสิ้นสุด
มาร์ตินยอร์

@ โลกิการย้ายไปยังจุดสิ้นสุดมักจะใช้การเลื่อนหน้าลงและปุ่มลูกศรจนกว่าฉันจะไปถึงที่นั่น มันอาจจะเป็นบรรทัดแรกหรือสิบที่ว่างเปล่ามันอาจเป็นวงเล็บปีกกาปิดครั้งแรก บรรทัดล่างคือมันแตกต่างกันเล็กน้อย

2
ตรวจสอบคำตอบนี้: stackoverflow.com/a/16407391/164835
Kent

คำตอบ:


111

ไปที่บรรทัดเริ่มต้นของบล็อกของคุณและพิมพ์ma(ทำเครื่องหมาย "a" ถึงแม้ว่าคุณสามารถใช้ตัวอักษรที่แตกต่างกันและแม้กระทั่งตัวอักษรหลายตัวสำหรับเครื่องหมายที่แตกต่างกันหากคุณสามารถเก็บไว้ในหัวของคุณสิ่งที่ตัวอักษรแต่ละตัวเป็นเครื่องหมาย) .

จากนั้นไปที่บรรทัดสุดท้ายและป้อนd'a(ลบเพื่อทำเครื่องหมาย "A") หรือy'a(งัดเพื่อทำเครื่องหมาย "A") (ก)

ที่จะลบ / ดึงทุกบรรทัดจากปัจจุบันไปยังบรรทัดที่ทำเครื่องหมายไว้ (รวมแล้ว)

จากนั้นคุณสามารถวางไว้ที่อื่นที่มีคำสั่งวางปกติเช่นหรือpP

นอกจากนี้ยังเข้ากันได้กับviและvimในโอกาสที่สภาพแวดล้อมของคุณไม่ได้รับพรกับหลัง


(a)ฉันใช้สิ่งนี้เพื่อบันทึกสถานที่ของฉันในไฟล์ถ้าฉันต้องไปที่อื่นเพื่อหาสิ่งที่ต้องการเช่นคัดลอกการวางคำจำกัดความของฟังก์ชั่นที่ฉันต้องการโทร

ฉันเพียงแค่ทำเครื่องหมายบรรทัดปัจจุบันในลักษณะเดียวกันmaแล้วเดินออกไปเพื่อค้นหาสิ่งที่คุณกำลังมองหา

จากนั้นเมื่อฉันพบมันและคัดลอกไปยังการลงทะเบียนฉันเพียงแค่ป้อน'aเพื่อกลับไปทำเครื่องหมาย "a" บรรทัดที่ฉันบันทึกไว้ล่วงหน้าซึ่งฉันสามารถวางได้


9
อาจใช้โหมดภาพสำหรับสิ่งนี้ด้วยใช่ไหม
jmc

3
นั่นเป็นวิธีหนึ่ง jmc แต่ฉันไม่แน่ใจว่ามาตรฐาน vi มีโหมดภาพ

5
ตั้งแต่ฉันย้ายจากการเลือกที่มองเห็นไปยังการทำเครื่องหมายและหมายเลขบรรทัดสัมพัทธ์เกี่ยวกับปีที่แล้วฉันพบว่าคำสั่งการเคลื่อนไหว vi จะเร็วขึ้นและมีประสิทธิภาพมากขึ้นแล้วการเลือกภาพ แม้ว่าในภายหลังจะง่ายขึ้นทุกครั้งที่ฉันกดvปุ่มฉันถามตัวเองว่าฉันต้องการมันมากหรือมีวิธีการเคลื่อนไหวที่ดีกว่า?
Sukima

1
ใช่ด้วยวิธีเดียวกันมันน่าสนใจ @Sukima ที่ฉันรู้สึกว่ามีประสิทธิภาพมากขึ้นฉันใช้เมาส์น้อยลงแม้แต่ใน GUI ฉันพบว่าตัวเองเร็วขึ้นถ้าฉันสามารถอยู่บนแป้นพิมพ์ได้

3
หากคุณเคยแก้ไขบางสิ่งบางอย่างที่มีเส้นยาวจริง ๆ รุ่นแบ็คทิกต์ของรุ่นนี้อาจมีประโยชน์มากเช่นกัน (ซึ่งหมายถึงสถานที่ที่อยู่ในบรรทัดแทนที่จะเป็นทั้งบรรทัด)
msouth

65

ในกลุ่มให้ใช้โหมดบรรทัดภาพ :

  1. วางเคอร์เซอร์ของคุณที่บรรทัดบนสุดของบล็อคข้อความ / รหัสเพื่อลบ
  2. กดV(นั่นคือทุน "V": Shift+ v)
  3. เลื่อนเคอร์เซอร์ของคุณลงไปที่ด้านล่างของบล็อคข้อความ / รหัสเพื่อลบ
  4. กด d

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


3
ในขั้นตอนที่ 3 คุณสามารถเคลื่อนไหวได้เร็วขึ้นโดยใช้การเคลื่อนไหวของวัตถุ ตัวอย่างเช่นสามารถใช้}เพื่อเลือกทั้งย่อหน้าหรือ)ประโยค มีมากขึ้นคุณสามารถอ่านเกี่ยวกับพวกเขาใน:h object-motions
mxlian

2
ด้วยการค้นหาซับสตริงด้วย/something<CR>เป็นวิธีที่มีประสิทธิภาพมากในการเข้าถึงจุดสิ้นสุดของบล็อกที่คุณเลือก
mxlian

1
นี่เป็นวิธีที่ฉันชอบ อย่างไรก็ตามไม่ต้องกดซ้ำ ๆjเพื่อเลื่อนเคอร์เซอร์ลง (ขั้นตอนที่ 3) คุณสามารถพิมพ์หมายเลขบรรทัดตามด้วยGเพื่อเลือกจนกระทั่งบรรทัดนั้น ตัวอย่าง:V150Gd
Ranhiru Jude Cooray

42

คุณสามารถทำได้:set relativenumberดังนั้นคุณไม่ต้องนับ ;)


8
หรือ:set numberจากนั้นใช้ d35G เพื่อลบจนถึงบรรทัด 35
Random832

2
ปลั๊กอิน numbers.vim ที่แนะนำในคำตอบของ ediblemanagerเป็นเหมือนrelativenumber:-) แต่ที่ดีกว่า
Martin Tournoij

39

คุณสามารถลบบล็อคข้อความขนาดใหญ่ได้อย่างง่ายดายซึ่งทราบถึงโครงสร้างของมัน

หากเป็นย่อหน้าให้ใช้: d{(เช่นคุณสามารถใส่คำนำหน้าด้วยจำนวนย่อหน้า)

หากเป็นโค้ดที่อยู่ในวงเล็บให้ใช้: d%

หากข้อความปรากฏขึ้นจนสิ้นสุดไฟล์ให้ใช้: dG

หากคุณรู้ว่ามันจะจบลงอย่างไรใช้: d/และพิมพ์ข้อความลงท้ายตามด้วยEnter(คุณสามารถใช้นิพจน์ทั่วไปได้

หรือใช้โหมดภาพ ( V) และใช้ปุ่มเคลื่อนไหวเพื่อเลือกข้อความ (เช่นโดย{) และลบออก ( d)

หรือตามที่ Lie Ryan แนะนำให้ใช้d/search-string/eเพื่อลบข้อความจากเคอร์เซอร์ปัจจุบันไปยังสตริงการค้นหา

ดู: :help dและ:help motionสำหรับข้อมูลเพิ่มเติม


2
นอกจากนี้ยังมีd/search-string/eการลบจากเคอร์เซอร์ปัจจุบันไปยังจุดสิ้นสุดของสตริงการค้นหารวมถึงสตริงการค้นหาตัวเองและc/search-queryเพื่อเข้าสู่โหมดแทรกหลังจากการลบ การใช้d/กับset incsearchเป็นชุดค่าผสมที่ประณีตเนื่องจากช่วยให้คุณทราบได้ว่าคุณกำลังทำงานในช่วงข้อความที่ถูกต้องหรือไม่และช่วยให้คุณรู้ว่าเมื่อใดควรหยุดพิมพ์คำค้นหาเพื่อหลีกเลี่ยงการพิมพ์เกินความจำเป็น
Lie Ryan

4
ฉันยังพบdกับa(ด้านนอก) หรือi(ด้านใน) และตัวระบุวัตถุมีประโยชน์มาก วัตถุเช่นwสำหรับคำpสำหรับวรรค(หรือbสำหรับ(...), [สำหรับ[...], {หรือBสำหรับ{...}ฯลฯเอกสารสำหรับภาพผู้ประกอบการ-
Shahbaz

22

คุณสามารถใช้การเคลื่อนไหวและ / หรือวัตถุข้อความ d}ตัวอย่างเช่นคุณสามารถลบทุกอย่างจากเคอร์เซอร์ไปที่บรรทัดว่างถัดไปด้วย หากเคอร์เซอร์อยู่ภายในย่อหน้าวรรคอาจถูกลบออกด้วยหรือdip dapหากเคอร์เซอร์อยู่ภายในแท็ก HTML คุณสามารถลบได้ด้วยหรือditdat

จำที่ดีสำหรับเหล่านี้เป็น " dหนึ่งคำที่ฉัน nside" และ " dหนึ่งคำรอบ" (วรรค / แท็ก / วงเล็บ)


11

ฉันมักจะทำ

:<start>,<end>d

ซึ่งจะลบทุกบรรทัดระหว่างหมายเลขเริ่มต้นและจุดสิ้นสุดที่ให้ไว้ (รวมถึงบรรทัดที่ระบุ)

โปรดทราบว่าทั้งสองstartและendสามารถเป็นหมายเลขบรรทัดสัมบูรณ์รูปแบบหรือออฟเซ็ตจากตำแหน่งอื่น

ดูความคิดเห็นของ doubleDown เกี่ยวกับการดูเอกสารช่วงของ Vim ซึ่งมีเคล็ดลับที่เป็นประโยชน์

ตัวอย่าง:

สมมติว่าคุณมีไฟล์ต่อไปนี้:

1. The quick brown
2. fox jumps
3. over the
4. lazy dog.

จากนั้นโดยใช้คำสั่ง:2,3dหรือ:/fox/,/over/dหรือ:/quick/+1,/lazy/-1หรือ:+1,+2dถ้าคุณอยู่ในบรรทัดแรกหรือ:-1,.dถ้าคุณอยู่ในบรรทัดที่สามคุณจะได้:

1. The quick brown
4. lazy dog.

แต่นี่หมายความว่าคุณยังต้องนับเส้นหรือไม่ หรือฉันเข้าใจผิดคำตอบของคุณ?
Martin Tournoij

7
คุณไม่จำเป็นต้องนับบรรทัด แต่คุณจำเป็นต้องรู้หมายเลขบรรทัด
jmc

เริ่มแรก:set rulerจากนั้นไปที่ด้านบน & ล่างของข้อความเพื่อค้นหาstartและendหมายเลขบรรทัดจากนั้นทำ:<start>,<end>d
roblogic

1
คุณสามารถใช้หมายเลขบรรทัดสัมพัทธ์ได้:+12,+24d
rpattabi

2
ที่จริงแล้วคุณสามารถใช้หมายเลขบรรทัดคู่รูปแบบคู่หรือคู่แบบผสมสำหรับ<start>และ<end>สำหรับสิ่งนี้ :h [range]สำหรับการอ้างอิงให้ดู ดังนั้นมันจึงยืดหยุ่นกว่าที่คุณคิดเอาไว้
doubleDown

5

หากเป็นบล็อกที่คั่นด้วย (เช่น: รหัสหรือแท็ก XML / HTML) ที่คุณกำลังติดต่อด้วยคุณสามารถวางเคอร์เซอร์ไว้ที่จุดเริ่มต้นของบล็อกและใช้โหมดภาพพร้อมกับ%เพื่อเลือกบล็อกทั้งหมดอย่างรวดเร็วจากนั้นกดปุ่มdเพื่อลบ


5
หรือคุณสามารถใช้dapเพื่อลบย่อหน้าda(, da{, da[, ลบบล็อก delimeted โดยวงเล็บวงเล็บหรือวงเล็บ สำหรับ html จะมีdatซึ่งจะลบแท็กและda'และda"ลบสตริง นอกจากนี้ยังมีdip,, di(ฯลฯ ตัวแปรที่จะลบทุกอย่างภายในตัวคั่น แต่ปล่อยให้ตัวคั่นสมบูรณ์ หรือคุณสามารถใช้vap(resp vip) เพื่อเลือกย่อหน้าทั้งหมด (resp inner) (และเพื่อให้มีva(และvi(.) นอกจากนี้ยังมีcapและcip(หรือca(และci() เพื่อลบและไปที่โหมดแทรก (เช่น "เปลี่ยน") และyapจะงัด
jmc

ฉันคิดว่าบางส่วนของการผูก @jmc อธิบายไว้ในความคิดเห็นก่อนหน้าของเขามาจากปลั๊กอิน Surround.vim โดย Tim Pope มันเป็นปลั๊กอินที่ยอดเยี่ยมที่ฉันแนะนำให้ติดตั้ง แต่นั่นหมายความว่าการเชื่อมโยงเหล่านี้ไม่ใช่ส่วนหนึ่งของการติดตั้ง vim เริ่มต้น
Haegin

5

นอกเหนือจากคำแนะนำที่ดีอื่น ๆ ทั้งหมดฉันเพิ่มd+ Shift+ Lสำหรับการลบทุกอย่างจากตำแหน่งเคอร์เซอร์ปัจจุบันไปยังบรรทัดสุดท้ายที่มองเห็นบนหน้าจอ การทำซ้ำคำสั่งจะทำให้คุณผิดหวังอย่างรวดเร็ว


5

numbers.vimปลั๊กอินเป็นประโยชน์อย่างมากสำหรับเรื่องนี้ มันเป็นวิธีที่พัฒนาขึ้นเพื่อนำหน้าแต่ละบรรทัดด้วยหมายเลขบรรทัด กดไลค์'number'และ'relativenumber'ทั้งคู่เหมือนกัน!

มันเปิดใช้งานโดยค่าเริ่มต้นหลังจากการติดตั้งคุณยังต้องการเพิ่มset numbervimrc ของคุณหากคุณยังไม่ได้รับมันเพราะมันจะทำงานในรูปแบบแปลก ๆ ถ้าคุณไม่ได้

ในโหมดปกติดูเหมือนว่า:set relativenumber:

  3 call plug#begin('~/.vim/plugged')
  2 
  1 Plug 'myusuf3/numbers.vim'
7   set number█
  1 
  2 " Add indentation 'guidelines' (:IndentLinesToggle or <F11>)
  3 Plug 'Yggdroot/indentLine'

มันแสดงหมายเลขบรรทัดสัมพัทธ์แก่คุณยกเว้นบรรทัดที่เคอร์เซอร์เปิดอยู่ซึ่งจะแสดงหมายเลขบรรทัดสัมบูรณ์ (7 ในกรณีนี้)

หากเราเปลี่ยนเป็นโหมดแทรกโหมดจะทำงานเหมือนnumberถูกตั้งค่าโดยแสดงหมายเลขบรรทัดที่แน่นอนเสมอ:

  4 call plug#begin('~/.vim/plugged')
  5 
  6 Plug 'myusuf3/numbers.vim'
  7 set number█
  8   
  9 " Add indentation 'guidelines' (:IndentLinesToggle or <F11>)
 10 Plug 'Yggdroot/indentLine'

มีตัวเลือกเพิ่มเติมและคำสั่งเล็กน้อย (ตรวจสอบหน้าแรก) แต่ค่าเริ่มต้นควรใช้กับคนส่วนใหญ่


ตอนแรกฉันคิดว่าคำตอบนี้เป็นหัวข้อเล็กน้อย แต่แล้วฉันติดตั้งปลั๊กอินและฉันต้องบอกว่ามันเป็นตัวเปลี่ยนเกมสำหรับฉัน ฉันใช้การสลับด้วยตนเองและขั้นตอนพิเศษทางจิตนั่นหมายความว่าฉันอายที่จะไม่ใช้การเคลื่อนไหวเหล่านั้น ขอขอบคุณ!
Sukima

1
สิ่งนี้ฟังดูเหมือนบางสิ่งที่หนึ่ง InsertEnter / InsertLeave autocmd เพื่อสลับหมายเลขบรรทัดสัมพัทธ์สามารถทำได้ ฉันพลาดอะไรไปรึเปล่า?
เบ็น

ฉันมาช้าไปงานปาร์ตี้ แต่ @Ben ถูกต้องนี่เป็นเพียงแค่คู่สายอัตโนมัติ ยกตัวอย่างเช่นใน vimrc ของฉันฉันมีset number, set relativenumberแล้วautocmd InsertEnter * :set norelativenumberและautocmd InsertLeave * :set relativenumber
B ชั้น

4

d/delimEnterอีกวิธีหนึ่งคือถ้าคุณกำลังพยายามที่จะลบเป็นรูปแบบเฉพาะคุณสามารถพิมพ์


2

คุณสามารถใช้ขั้นตอนปกติของการป้อนdรวมทั้งการเคลื่อนไหว (ตามที่อธิบายไว้แล้วในคำตอบอื่น ๆ ) ปลั๊กอิน EasyMotion จัดเตรียมการเคลื่อนไหวใหม่ที่คุณสามารถใช้ซึ่งสามารถแก้ไขปัญหาของคุณได้อย่างรวดเร็วและง่ายดาย

สมมติว่าคุณต้องการลบจากตำแหน่งเคอร์เซอร์ปัจจุบันไปยังจุดสิ้นสุดของคำที่ระบุบนหน้าจอปุ่มการเคลื่อนไหวจะเป็น<Leader><Leader>e(คล้ายกับการeเคลื่อนไหวปกติ) จากนั้นพิมพ์ตัวอักษรที่ไฮไลต์ที่ปรากฏท้ายคำที่เป็นปัญหา <Leader><Leader>jนอกจากนี้ยังมีการเคลื่อนไหวบรรทัดเพื่อให้คุณสามารถลบบรรทัดปัจจุบันลงไปที่บรรทัดในคำถามด้วย

ฉันได้ฉันสำคัญการตั้งค่าให้<Leader> ,ดังนั้นคำสั่งทั้งหมดคือd<Leader><Leader>e{ตัวอักษรเน้นสี}

จาก:help easymotion:

EasyMotion มีวิธีที่ง่ายกว่ามากในการใช้การเคลื่อนไหวเป็นกลุ่ม ใช้เวลา<number>ไม่เกิน<number>w หรือ<number>f {char}โดยเน้นตัวเลือกที่เป็นไปได้ทั้งหมดและให้คุณกดปุ่มหนึ่งเพื่อข้ามไปยังเป้าหมายโดยตรง

เมื่อหนึ่งในการเคลื่อนไหวที่มีอยู่จะถูกเรียกใช้ข้อความที่มองเห็นก่อนหน้าหรือตามเคอร์เซอร์จะจางหายไปและเป้าหมายการเคลื่อนไหวจะเน้น

แก้ไข:

EasyMotion ของพื้นที่เก็บข้อมูล GitHubที่https://github.com/Lokaltog/vim-easymotion

การredditนี้เกี่ยวกับคนที่ใช้ easymotionอาจเป็นการอ่านที่สนุก


1

มีวิธีแก้ปัญหาง่ายๆที่สามารถแก้ปัญหาของคุณได้

d50ggวางเคอร์เซอร์ที่จุดเริ่มต้นของบล็อกข้อความที่คุณต้องการที่จะลบและทำ

การดำเนินการนี้จะลบบรรทัดทั้งหมดออกจากตำแหน่งปัจจุบันของคุณเป็นบรรทัดที่ 50 ของข้อความของคุณ

EQ: ถ้าเคอร์เซอร์ของคุณอยู่ที่เส้น46 , d50ggจะลบ4เส้น


1
ฉันขอแนะนำให้ใช้Gแทน gg เพราะมันยังใช้งานได้ใน vi และแน่นอนว่า:set numberมีประโยชน์เสมอสำหรับการค้นหาหมายเลขบรรทัดที่คุณต้องการไป
Random832

ประเด็นทั้งหมดของคำถามนี้คือคุณไม่ทราบว่าคุณต้องการลบกี่บรรทัด
200_success

200_ ความสำเร็จคุณไม่จำเป็นต้องรู้จำนวนบรรทัดที่คุณต้องการลบด้วยคำตอบที่ฉันโพสต์ สิ่งที่คุณต้องรู้คือ "คุณต้องการลบบรรทัดใด"
Geee

1

ใช้โหมดภาพด้วยการเน้นเส้น

  1. วางเคอร์เซอร์ของคุณที่บรรทัดบนสุดของบล็อคข้อความ / รหัสเพื่อลบ
  2. กดShift+v
  3. เลื่อนเคอร์เซอร์ของคุณลงไปที่ด้านล่างของบล็อคข้อความ / รหัสเพื่อลบ
  4. กด d

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


3
คุณต้องทำซ้ำคำตอบโดย @ 200_success
Martin Schröder

1

ฉันไม่ชอบrelativenumberอยู่ตลอดเวลาดังนั้นฉันจึงกำหนดค่า Vim ให้เปิดใช้งานเฉพาะเมื่อฉันอยู่ในโหมดภาพ:

" Entering Visual mode
nnoremap <silent>     v :set relativenumber cursorcolumn<CR>v
nnoremap <silent> <C-q> :set relativenumber cursorcolumn<CR><C-q>
nnoremap <silent>    gv :set relativenumber cursorcolumn<CR>gv
nnoremap <silent>     V :set relativenumber<CR>V

" When finished
augroup ClearCursorColumnAndLine
    autocmd!
    autocmd CursorHold * set norelativenumber nocursorcolumn nocursorline
augroup END

สิ่งนี้ทำให้งานของคุณง่ายขึ้น:

V49jd

เพราะหลังจากกดปุ่มVคุณจะเห็นว่าเส้นเป้าหมายอยู่ห่างออกไปมากแค่ไหน

สิ่งนี้อาจพิสูจน์ได้ว่าน่ารำคาญในระยะยาว (ตัวอักษรเลื่อนไปทางซ้ายและขวาเมื่อเปิดใช้งาน / ปิดใช้งาน relativenumber) แต่จนถึงตอนนี้ฉันค่อนข้างสนุกกับมัน


1
ฉันคิดว่าคุณใช้v<Esc>d50j?
Martin Tournoij

ขอบคุณฉันเขียนมันไม่ถูกต้องแน่นอน จริง ๆ แล้วฉันเริ่มต้นด้วยVถ้าฉันรู้ว่าฉันจะทำการดำเนินการที่ชาญฉลาดและจากนั้นฉันสามารถออกdจนกว่าจะล่าสุดเพื่อความมั่นใจมากขึ้น
joeytwiddle

คำตอบของฉันดูเหมือนจะเป็นคนยากจนประมาณปลั๊กอินplugin.vim ที่เสนอในคำตอบอื่น ;-)
joeytwiddle

1

สิ่งที่ทำงานได้ดีสำหรับฉันด้วยvi:

  1. :set number เพื่อดูจำนวนบรรทัดจนกระทั่งตำแหน่งที่ฉันต้องการลบ

    +1289 idle 
    +1289 idle 
    +1290 # <- I want to delete until here
    +1291 if [[ ! -z "$SFIN" ]]
    
  2. กลับไปที่บรรทัดที่ต้องเริ่มต้นการลบ

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