OSX: แก้ไขการเลือกข้อความด้วย⌘⇧→และ⌘⇧←


10

ฉันเลือกข้อความโดยใช้แป้นพิมพ์เริ่มต้นที่บรรทัดล่างแล้วเลื่อนขึ้น ( ตัวอักษร|ระบุตำแหน่งเคอร์เซอร์):

AAA | {BBB CCC

DDD} EEE FFF

สร้างการเลือก


ตอนนี้ฉันต้องการเปลี่ยนการเลือกเพื่อให้เริ่มต้นที่ส่วนท้ายของบรรทัดแรกนั่นคือเพื่อให้มีลักษณะดังนี้:

ผลลัพธ์ที่คาดหวัง:

AAA BBB CCC | {

DDD} EEE FFF


ฉันสามารถลดการเลือกคำต่อคำด้วย :

จัดการกับส่วนที่เลือกด้วย option-shift-arrows


แต่วิธีที่เป็นธรรมชาติในการทำคือผ่าน เพื่อกระโดดไปยังจุดสิ้นสุดของบรรทัดแรกโดยตรง ในเครื่องมือแก้ไขข้อความที่เหมาะสมหลายตัวก็ใช้งานได้ดี (เช่น Sublime Text 2) พวกเขายังทำให้|ตำแหน่งที่มองเห็นเมื่อข้อความถูกเลือก btw

อย่างไรก็ตามพฤติกรรมเริ่มต้นของแอพพลิเคชั่น OSX ก็คือพวกเขาเพิกเฉยต่อความจริงที่ว่าเคอร์เซอร์อยู่ในช่วงเริ่มต้นของการเลือกและการย้ายไปทางขวาควรลบการเลือกที่นั่น ให้ ขยายการเลือกจากจุดสิ้นสุดเสมอจนจบบรรทัดไม่ว่าเคอร์เซอร์จะอยู่ที่ใด:

ผลลัพธ์ที่แท้จริง:

AAA {BBB CCC

DDD EEE FFF} |

จัดการการเลือกด้วย command-shift-arrows


มีวิธีใดบ้างที่จะทำให้แอพพลิเคชั่น OSX ดั้งเดิมนั้นทำงานเหมือนที่คาดไว้?

ฉันใช้ OSX Yosemite 10.10.2 แต่ฉันคิดว่าปัญหานี้อยู่ที่นั่นนานเท่าที่ฉันจำได้


ฉันสามารถทำซ้ำได้ใน 10.10.1 - อาจจะได้รับการแก้ไขในเบต้าหรือไม่
0942v8653

1
ฉันใช้โยเซมิตี 10.10.2 (เพิ่มคำถามนี้ด้วย) แต่ฉันคิดว่านี่เป็นกรณีเสมอ ฉันใช้โปรแกรมตัดต่อโค้ดที่มีความสามารถในการแก้ไขข้อความเป็นหลัก แต่ฉันชอบที่จะหาวิธีแก้ปัญหาระดับ OS สำหรับเรื่องนี้
Jakub Roztocil

1
โปรดดูที่เอกสารการสนับสนุนแอปเปิ้ลนี้ซึ่งระบุว่า cmd + shift + select text between the insertion point and the end of the current lineลูกศรขวาประสงค์ บรรทัดเดียวในตัวอย่างของคุณที่การเลือกไม่ได้รวมจุดสิ้นสุดของบรรทัดเป็นบรรทัดสุดท้าย ดังนั้นพฤติกรรมที่คาดหวังใน OS X คือการขยายการเลือกจากที่นั่นไม่ตัดทอนในบรรทัดเริ่มต้น! ฉันรู้ว่าบรรณาธิการบางคนทำงานแตกต่างกัน แต่พวกเขากำลังทำผิดระบบไม่ใช่!
Asmus

1
@ Assmus มีเครื่องหมายดอกจันเล็กน้อยหลังจากคำอธิบายของแป้นพิมพ์ลัด (และอื่น ๆ อีกมากมาย) แต่ไม่มีคำอธิบายใด ๆ ความคิดใด ๆ ที่(*)หมายถึงอะไร
Jakub Roztocil

1
ไม่ทราบว่ามีความ(*)หมายว่าอย่างไร แต่อาจเป็นเพราะเอกสารคู่มือรุ่นก่อนหน้า ฉันได้อัปเดตคำตอบของฉันเล็กน้อยเพื่อรวมตัวเลือกการล็อคคีย์ทั่วโลกเท่านั้นที่ฉันรู้จัก เนื่องจากพฤติกรรมดังกล่าวไม่ได้มีในตัวแอปพลิเคชันจะไม่จัดการกับมันแม้ว่าคุณจะสามารถเรียกใช้
Asmus

คำตอบ:


1

Mac ไม่ได้ใช้ตำแหน่งเคอร์เซอร์หากคุณมีการเลือกข้อความหลายรายการเพราะมันถือว่าเคอร์เซอร์อยู่ที่ 'all text text ที่เลือก'

คุณสามารถเห็นสิ่งนี้แสดงให้เห็นว่าคุณใช้ Cmd ⌘ Shift ⇧ แทนการ
เพิ่มไปยังส่วนที่เลือกด้วย Shift ⇧ รวมถึงตัวเลือกก่อนหน้า

ไม่ใช่การแก้ไข แต่การแก้ไขอาจเป็นวิธีที่จะย้ายเคอร์เซอร์ไปที่จุดสิ้นสุดของการเลือกปัจจุบันของคุณพร้อมยกเลิกการเลือกมันจากนั้น Cmd ⌘ Shift ⇧ เลือกจากจุดเริ่มต้นของบรรทัด


สิ่งนี้หมายความว่า? "การเลือกข้อความหลายรายการ"
Nicolas Barbulesco

1

ดังนั้นวิธีที่ฉันเห็นการนำทางข้อความบน OS X ใช้งานได้ (และคาดว่าจะทำงาน) เช่นนี้:

  1. นำทางต่อบรรทัด (หรือเอกสารเช่นชุดข้อมูลขนาดใหญ่):

    cmd+ ปุ่มลูกศร: เลื่อนไปตามบรรทัด (ซ้าย / ขวาสำหรับบรรทัดขึ้น / ลงสำหรับเอกสารทั้งหมด) กดค้างshiftเพื่อเลือก

  2. นำทางต่อคำ (เช่นกลุ่มข้อมูลขนาดเล็ก):

    alt+ ปุ่มลูกศร: เลื่อนไปตามคำ (ซ้าย / ขวา) กดค้างshiftเพื่อเลือก

ดังนั้นเพื่อให้บรรลุ "ผลลัพธ์ที่คาดหวัง" ของคุณคุณควรกดลูกศรขวาก่อนถึงจุดสิ้นสุดของการเลือกปัจจุบันของคุณแล้วกดcmd+ shift+ เพื่อเลือกบรรทัดที่นำไปสู่

เมื่อคุณมีตัวเลือกอยู่แล้ว:

  1. การใช้altคีย์ผสมด้านบนจะเพิ่ม / ลดการเลือกตามทิศทาง (แก้ไขจุดสิ้นสุดของการเลือกก่อนหน้าของคุณเสมอโดยสันนิษฐานว่าคุณพลาดจุดสิ้นสุดไปเล็กน้อย ) กันไปสำหรับการเพิ่มตัวอักษรเดียวกับปุ่ม Shift + ลูกศรเท่านั้น
  2. cmdเพิ่มขึ้นคำสั่งผสมในทั้งสองทิศทางทะนงคุณหลังจากเลือกชิ้นใหญ่ของข้อความแล้วล่ะค่ะ

ปรับปรุง

เรื่องสั้นสั้น: สิ่งที่คุณต้องการเป็นไปไม่ได้จริงๆ หากคุณดูรายการการเชื่อมโยงคีย์ระบบที่มีอยู่โดยการรัน

plutil -convert xml1 /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict -o -|pl|grep -v noop:|ruby -pe '$_.gsub!(/[^ -~\n]/)' | grep -i selection

คุณจะเห็นว่าแม้ว่าคุณจะสามารถผูกคีย์ที่กำหนดเองกับฟังก์ชั่นการเลือกทั้งหมดได้ ~/Library/KeyBindings/DefaultKeyBinding.dict แต่ก็ไม่มีฟังก์ชั่นดังกล่าวที่สามารถใช้งานได้ตามที่คุณต้องการ (เนื่องจากพฤติกรรมนี้ไม่ได้อยู่ในระบบ)


ฉันคิดว่า Apple Up และ Apple Down ไปที่จุดเริ่มต้นและจุดสิ้นสุดของเอกสารและไม่ไปตามหน้า
Nicolas Barbulesco

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