Đừng muốn iBooks luôn dán Đoạn trích dẫn trên Từ những gì tôi đã sao chép


30

Tôi đọc trên iBooks và một số tài nguyên khác và thu thập các ghi chú của tôi trong EverNote. Khi tôi sao chép văn bản từ iBooks để giữ nó như một ghi chú trong một số ứng dụng bên ngoài khác như EverNote, nó sẽ tiếp tục dán thông tin nguồn gây phiền nhiễu và tôi phải tiếp tục xóa chúng sau mỗi lần sao chép. Ví dụ:

“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
Bạn không thể tránh điều này. Apple đã lập trình nó theo cách đó do pháp lý và bản quyền. Vì vậy, tin xấu cho bạn cần phải làm quen với nó. :-(
konqui

bạn có thể xây dựng Tập lệnh tự động hóa không - nhưng tôi không chắc liệu bạn có thể chỉnh sửa Sao chép văn bản + Quá trình dán ...
bMalum

3
Điều đó thực sự khó chịu khi bạn thực sự có quyền sao chép cụm từ : '(
Rubens Mariuzzo

1
Đến đây vì dán từ các ví dụ cuốn sách Swift hút. Thêm một lý do để lấy tài liệu từ iBooks nhưng tất cả các sách lập trình trên Kindle.
Dirk Bester

2
@konqui Họ biết chúng ta có thể xóa quyền đó. Nó không thông minh lắm. Nó là một cái nồi hơi khó chịu cho một nhiệm vụ cơ bản.
atilkan

Câu trả lời:


11

Bài đăng trên blog này đưa ra một ví dụ về cách thực hiện bằng cách sử dụng tập lệnh Automator với phím tắt.

Trong Automator, tạo một Dịch vụ mới không nhận được đầu vào. Cho nó ba hành động sau:

  1. Nhận nội dung của Clipboard
  2. Chạy Shell Script
  3. Sao chép vào clipboard

Đặt điều này trong hành động 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'

Xóa bỏ trích dẫn iBooks Dịch vụ trong máy tự động

Sau khi lưu dịch vụ, bạn có thể chỉ định một phím tắt cho hành động này, chẳng hạn như I, trong Tùy chọn hệ thống> Bàn phím> Phím tắt> Dịch vụ. Sau đó, bạn nhấn phím tắt đó trước khi dán nếu bạn muốn thoát khỏi văn bản mà iBooks đã thêm.


Cảm ơn Amir, siêu hữu ích, điều này đã làm tôi khó chịu từ lâu!
GGx - Phục hồi Monica Cellio

Đó không phải là thực sự thực sự có vấn đề? Điều gì xảy ra nếu có một trận đấu regex cho một số thứ khác mà bạn sao chép đã dán?
t0mgs

@ t0mgs sau đó bạn chỉ cần không sử dụng phím tắt được chỉ định trước khi dán
Martin

Tôi cho là hợp pháp. Cảm ơn!
t0mgs

5

Bạn có thể sử dụng Bàn phím Maestro để kích hoạt AppleScript sau:

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

Với Bàn phím Maestro, bạn sẽ tạo một macro mới, được kích hoạt bởi một số tổ hợp phím (có thể là Command-Option-V) và bước đầu tiên sẽ là "Thực thi AppleScript" (trong phần Thực thi) bằng cách sử dụng tập lệnh trên. Bước tiếp theo sẽ là "Dán" (trong phần Clipboard). Bạn sẽ sao chép văn bản của mình, sau đó nhấp vào nơi bạn muốn dán nó, sau đó nhấn Command-Option-V để dán nó vào mà không có hai đoạn cuối.

Các chương trình macro khác sẽ hoạt động miễn là chúng biết cách thực thi AppleScript.


Tôi đã sử dụng giải pháp của bạn, nhưng kết quả cuối cùng là bao gồm cả dấu ngoặc kép. Làm thế nào để tôi thoát khỏi điều đó để các dấu ngoặc kép xung quanh được loại bỏ?
Michael Jaq

Thậm chí, bạn không cần một chương trình bên ngoài mà đưa AppleScript vào dịch vụ tự động hóa, sau đó đặt dịch vụ tự động hóa thành phím tắt.
Wowfunhappy

@MichaelJaq Câu trả lời của tôi chứa một macro cho Bàn phím Maestro cũng loại bỏ các dấu ngoặc kép.
Rory O'Kane

@MichaelJaq bạn có thể sử dụng phương thức này với tập lệnh shell trong chuỗi này và nó sẽ xóa dấu ngoặc kép. Thay đổi "Thực thi AppleScript" thành "Thực thi tập lệnh Shell". AppleScript này đã không xóa chúng nên chỉ là một phần kết quả.
MarkBTomlinson

3

Tôi đã tạo một tập lệnh cho ClipMothy (tiện ích clipboard của macOS) để loại bỏ thông tin không mong muốn:

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

Lưu thành /Users/USERNAME/Library/Application Support/ClipMenu/script/action/iBooks.js


3

Dưới đây là các bước để sao chép văn bản từ iBooks:

  1. Làm nổi bật các đoạn bạn muốn sao chép.
  2. Một cửa sổ bật lên sẽ được mở tự động hoặc bạn phải mở một cửa sổ bật lên bằng cách nhấp chuột phải vào các đoạn đã chọn.
  3. Chọn tùy chọn 'Thêm ghi chú' từ cửa sổ bật lên.
  4. Văn bản được chọn / tô sáng sẽ được hiển thị trên khung bên trái.
  5. Nhấp chuột phải vào các đoạn trong bảng điều khiển bên trái và chọn tùy chọn 'Sao chép'.

Tôi đã tạo một video để hiển thị cách thức hoạt động: https://youtu.be/ZQLl_Gl9TMw

Chúc mừng mã hóa!


> Văn bản được chọn / tô sáng sẽ được hiển thị ở khung bên trái. Những gì còn lại khung? Cái này sai. Không có bất kỳ khung bên trái nào xuất hiện
Green

3

Dưới đây là cách thiết lập macro Bàn phím Ma trận để loại bỏ văn bản bổ sung, bao gồm cả dấu ngoặc kép, thời điểm văn bản được sao chép từ iBooks.

Trước tiên, hãy tạo một nhóm macro có tên là ánh xạ dành riêng cho iBooks và thêm iBooks trong phạm vi có sẵn trong các ứng dụng này. (Trong các phiên bản macOS gần đây hơn, ứng dụng sẽ được đặt tên là Sách thay vì iBooks.)

Ánh xạ cụ thể của iBooks dành cho người dùng trong nhóm Maestro

Sau đó, tạo một macro có tên là Copy Copy mà không cần trích dẫn. Chỉ định nó là phím nóng C. Cung cấp cho macro các hành động sau:

  1. Clipboard> Sao chép
  2. Clipboard> Tìm kiếm và Thay thế
    • Tìm kiếm: Clipboard hệ thống
    • cho: Biểu thức chính quy (phân biệt chữ hoa chữ thường)
      • ^“
    • và thay thế bằng:
      • (để trống)
  3. Clipboard> Tìm kiếm và Thay thế
    • Tìm kiếm: Clipboard hệ thống
    • cho: Biểu thức chính quy (phân biệt chữ hoa chữ thường)
      • ”\s*Excerpt.*Books\.\s?$
    • và thay thế bằng:
      • (để trống)

Đây là giao diện của Bàn phím Maestro:

Sao chép mà không cần trích dẫn Macro macro trong Bàn phím Maestro

Bây giờ, bất kỳ văn bản nào trong iBooks được sao chép bằng phím tắt đó sẽ có thêm văn bản bị tước khỏi cả hai đầu.


Cảm ơn câu trả lời của Filip Suk cho các biểu thức thông thường.
Rory O'Kane

Đối với những người có iBooks được thay thế bằng "Sách", chỉ cần sửa đổi RegEx cuối cùng với”\s*Excerpt.*Books\.\s?$
Tim N.

@TimN. Cảm ơn. Tôi đã cập nhật câu trả lời và ảnh chụp màn hình để sử dụng regex đó, vì regex đó sẽ hoạt động cho cả hai tên ứng dụng.
Rory O'Kane

1

từ câu trả lời của Amir Raminfar. Đây là một cách nếu bạn muốn sao chép trực tiếp mà không cần Lệnh C để lưu nội dung vào bảng clip.

chỉ cần thay đổi Dòng công việc nhận hiện tại thành: "văn bản" trong "Books.app" và vô hiệu hóa lấy nội dung của Clipboard.


Chào mừng bạn đến hỏi khác nhau. Đây là một nhận xét về một Câu trả lời trước đó và không phải là một Câu trả lời độc lập. Nó không phải là câu trả lời của riêng nó. Vui lòng xem Làm thế nào để trả lời cho lời khuyên về việc cung cấp câu trả lời ở đây. - Từ đánh giá
fsb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.