ไม่ต้องการให้ iBooks วาง“ ข้อความที่ตัดตอนมาจาก” สิ่งที่ฉันคัดลอกมาเสมอ


30

ฉันอ่าน iBooks และแหล่งข้อมูลอื่น ๆ และรวบรวมบันทึกย่อของฉันใน EverNote เมื่อฉันคัดลอกข้อความจาก iBooks เพื่อเก็บไว้เป็นบันทึกย่อในแอปพลิเคชันภายนอกอื่น ๆ เช่น EverNote มันจะวางข้อมูลต้นฉบับซึ่งน่ารำคาญมากและฉันต้องลบทิ้งหลังจากคัดลอกทุกครั้ง ตัวอย่างเช่น:

“To bind this class using Ninject, I specify the value of the constructor parameter using the WithConstructorArgument method in the AddBindings method, as shown in Listing 6-20.”

Excerpt From: Adam Freeman. “Pro ASP.NET MVC 5.” iBooks. https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewBook?id=4CB3769B56E7D2A905C0332D53D7E31D

2
คุณไม่สามารถหลีกเลี่ยงปัญหานี้ได้ Apple ตั้งโปรแกรมด้วยวิธีนี้เนื่องจากกฎหมายและลิขสิทธิ์ ข่าวร้ายสำหรับคุณจำเป็นต้องทำความคุ้นเคยกับมัน :-(
konqui

คุณสามารถสร้างสคริปต์อัตโนมัติได้ แต่ฉันไม่แน่ใจว่าคุณสามารถแก้ไขข้อความคัดลอก + วางกระบวนการ ...
bMalum

3
ช่างน่ารำคาญจริง ๆ เมื่อคุณมีสิทธิ์คัดลอกวลี: '(
Rubens Mariuzzo

1
มาที่นี่เพราะการวางจากตัวอย่างหนังสือของ Swift แย่มาก อีกหนึ่งเหตุผลที่จะได้รับวรรณกรรมจาก iBooks แต่หนังสือโปรแกรมทั้งหมดใน Kindle
Dirk Bester

2
@konqui พวกเขารู้ว่าเราสามารถลบได้ มันไม่ฉลาดมาก มันเป็นสำเร็จรูปที่น่ารำคาญสำหรับงานขั้นพื้นฐาน
atilkan

คำตอบ:


11

โพสต์บล็อกนี้แสดงตัวอย่างวิธีการใช้สคริปต์ Automator ด้วยแป้นพิมพ์ลัด

ใน Automator ให้สร้างบริการใหม่ที่ไม่ได้รับอินพุต ให้มันเป็นการกระทำที่สาม:

  1. รับเนื้อหาของคลิปบอร์ด
  2. เรียกใช้ Shell Script
  3. คัดลอกไปที่คลิปบอร์ด

วางสิ่งนี้ในการดำเนินการ Run Shell Script:

# strip out iBooks citation
sed -E -e 's/^[ ]?[0-9]* //g' | sed -E -e 's/“[ ]?[0-9]?[ ]?//g' | sed -E -e 's/”$//g'  | sed -E -e 's/^(Excerpt From).*//g'

บริการ“ ลบการอ้างอิง iBooks” ใน Automator

หลังจากบันทึกบริการคุณสามารถกำหนดทางลัดให้กับการกระทำนี้เช่นIในการตั้งค่าระบบ> คีย์บอร์ด> ทางลัด> บริการ จากนั้นคุณกดปุ่มลัดนั้นก่อนที่จะวางถ้าคุณต้องการกำจัดข้อความที่เพิ่มเข้ามา


ขอบคุณ Amir มีประโยชน์สุด ๆ นี่มันบั๊กฉันมานานแล้ว!
GGx - Reinstate Monica Cellio

นั่นไม่ใช่ปัญหาจริงๆหรือ? จะเกิดอะไรขึ้นถ้ามีการจับคู่ regex สำหรับสิ่งอื่นที่คุณคัดลอกวาง
t0mgs

@ t0mgs จากนั้นคุณก็ไม่ได้ใช้ทางลัดที่กำหนดไว้ก่อนที่จะวาง
มาร์ติน

ฉันคิดว่าถูกต้องตามกฎหมาย ขอบคุณ!
t0mgs

5

คุณสามารถใช้ Keyboard Maestro เพื่อทริกเกอร์ AppleScript ต่อไปนี้:

set original_clipboard to the clipboard
set paragraph_count to count of paragraphs of original_clipboard
-- assuming the last two paragraphs are what you want to strip out--
-- that is, the blank line and the attribution
set new_clipboard to paragraphs 1 thru -2 of original_clipboard as string
set the clipboard to new_clipboard
-- now you can paste

ด้วย Keyboard Maestro คุณจะสร้างแมโครใหม่โดยการกดแป้นบางปุ่ม (อาจจะเป็น Command-Option-V) และขั้นตอนแรกจะเป็น "Execute an AppleScript" (ในส่วน Execute) โดยใช้สคริปต์ด้านบน ขั้นตอนต่อไปจะเป็น "วาง" (ในส่วนคลิปบอร์ด) คุณจะคัดลอกข้อความของคุณแล้วคลิกตำแหน่งที่คุณต้องการวางจากนั้นกด Command-Option-V เพื่อวางข้อความโดยไม่ต้องมีสองย่อหน้าสุดท้าย

โปรแกรมแมโครอื่น ๆ จะทำงานได้ตราบใดที่พวกเขารู้วิธีดำเนินการ AppleScript


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

คุณไม่ควรต้องใช้โปรแกรมภายนอก - ใส่ AppleScript เข้ากับบริการอัตโนมัติจากนั้นตั้งค่าบริการอัตโนมัติเป็นแป้นพิมพ์ลัด
Wowfunhappy

@MichaelJaq คำตอบของฉันมีมาโครสำหรับ Keyboard Maestro ที่ตัดเครื่องหมายคำพูดด้วย
Rory O'Kane

@MichaelJaq คุณสามารถใช้วิธีนี้กับเชลล์สคริปต์ในเธรดนี้และมันจะลบอัญประกาศ เปลี่ยน "Execute an AppleScript" เป็น "Execute Shell Script" AppleScript นี้ไม่ได้ลบผลการค้นหาบางส่วนเท่านั้น
MarkBTomlinson

3

ฉันสร้างสคริปต์สำหรับClipMenu (ยูทิลิตี้คลิปบอร์ด macOS) เพื่อดึงข้อมูลที่ไม่ต้องการ:

return clipText.replace(/^“/, '').replace(/”\s*Excerpt.*iBooks\.\s?$/, '');

บันทึกเป็น /Users/USERNAME/Library/Application Support/ClipMenu/script/action/iBooks.js


3

ด้านล่างเป็นขั้นตอนในการคัดลอกข้อความจาก iBooks:

  1. ไฮไลต์ข้อความที่คุณต้องการคัดลอก
  2. ป๊อปอัพจะเปิดขึ้นโดยอัตโนมัติหรือคุณต้องเปิดป๊อปอัปโดยคลิกขวาที่ข้อความที่เลือก
  3. เลือกตัวเลือก 'เพิ่มบันทึกย่อ' จากป๊อปอัพ
  4. ข้อความที่เลือก / ไฮไลต์จะปรากฏในบานหน้าต่างด้านซ้าย
  5. คลิกขวาที่ข้อความในแผงด้านซ้ายและเลือกตัวเลือก 'คัดลอก'

ฉันสร้างวิดีโอเพื่อแสดงวิธีการทำงาน: https://youtu.be/ZQLl_Gl9TMw

การเข้ารหัสที่มีความสุข!


> ข้อความที่เลือก / ไฮไลต์จะปรากฏในบานหน้าต่างด้านซ้าย บานหน้าต่างด้านซ้ายอะไร นี่เป็นสิ่งที่ผิด ไม่มีบานหน้าต่างด้านซ้าย exsts
กรีน

3

นี่คือวิธีการตั้งค่ามาโครคีย์บอร์ดมาสโทรเพื่อตัดข้อความเพิ่มเติมรวมถึงเครื่องหมายคำพูดขณะคัดลอกข้อความจาก iBooks

ก่อนอื่นให้สร้างกลุ่มแมโครที่ชื่อ“ การทำแผนที่เฉพาะ iBooks” และเพิ่ม iBooks ภายใน“ พร้อมใช้งานในแอปพลิเคชันเหล่านี้” (ใน macOS เวอร์ชันล่าสุดแอปพลิเคชันจะมีชื่อว่า Books แทนที่จะเป็น iBooks)

กลุ่ม“ การทำแผนที่เฉพาะ iBooks” ใน Keyboard Maestro

จากนั้นสร้างแมโครชื่อ“ คัดลอกโดยไม่มีการอ้างอิง” Cกำหนดคีย์ร้อน ให้แมโครดำเนินการดังต่อไปนี้:

  1. คลิปบอร์ด> คัดลอก
  2. คลิปบอร์ด> ค้นหาและแทนที่
    • ค้นหา: คลิปบอร์ดของระบบ
    • สำหรับ: นิพจน์ทั่วไป (ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
      • ^“
    • และแทนที่ด้วย:
      • (เว้นว่างไว้)
  3. คลิปบอร์ด> ค้นหาและแทนที่
    • ค้นหา: คลิปบอร์ดของระบบ
    • สำหรับ: นิพจน์ทั่วไป (ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
      • ”\s*Excerpt.*Books\.\s?$
    • และแทนที่ด้วย:
      • (เว้นว่างไว้)

นี่คือลักษณะที่ปรากฏใน Keyboard Maestro:

มาโคร“ คัดลอกโดยไม่มีการอ้างอิง” ใน Keyboard Maestro

ตอนนี้ข้อความใด ๆ ใน iBooks ที่คัดลอกโดยใช้แป้นพิมพ์ลัดนั้นจะมีการตัดข้อความพิเศษจากปลายทั้งสองด้าน


ขอบคุณคำตอบของ Philipp Sukสำหรับการแสดงออกปกติ
Rory O'Kane

สำหรับผู้ที่ iBooks ถูกแทนที่ด้วย "Books" เพียงแก้ไข RegEx ล่าสุดด้วย”\s*Excerpt.*Books\.\s?$
Tim N.

@TimN ขอบคุณ ฉันอัปเดตคำตอบและภาพหน้าจอเพื่อใช้ regex นั้นเนื่องจาก regex นั้นควรใช้ได้กับทั้งชื่อแอป
Rory O'Kane

1

จากคำตอบของ Amir Raminfar นี่เป็นวิธีที่คุณต้องการคัดลอกโดยตรงโดยไม่ต้องใช้คำสั่ง C เพื่อบันทึกเนื้อหาไปยังบอร์ดคลิป

เพียงเปลี่ยนเวิร์กโฟลว์ได้รับปัจจุบันเป็น: "text" ใน "Books.app" และปิดการใช้งานรับเนื้อหาของคลิปบอร์ด


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