2009-02-12 5 views
7

Khi chỉnh sửa văn bản không phải WYSIWYG (LaTeX, HTML, v.v.), bạn có thể muốn có dòng mới ở cuối câu. Điều này có một số lợi thế:Trình chỉnh sửa trình diễn: Duy trì dòng mới ở cuối câu

  1. Dễ dàng sắp xếp lại các câu.
  2. Dễ dàng nhận xét hơn các câu.
  3. Dễ dàng phát hiện các câu chạy/quá dài.
  4. Dễ dàng nhận xét hơn trên câu.

Ví dụ:

% The following isn't strictly true; maybe excise or comment out for now: 
After all, people who use Word or other WYSIWYG editors are aiding and 
abetting terrorists. 

Và có lẽ là lợi thế quan trọng nhất của tất cả là nó làm cho chỉnh sửa hợp tác dưới sự kiểm soát phiên bản dễ dàng hơn nhiều. Nếu không, bạn kết thúc với các xung đột mà nó chỉ thông báo cho bạn "hai phiên bản sau của đoạn văn lớn này đang xung đột".

Nhưng việc duy trì dòng mới ở cuối câu là nói dễ hơn làm ...

As you edit the prose 
it will get all chopped up, like this. 
Normally you'd do a "reformat paragraph" 
to clean it up, but then 
you lose the newlines at the ends of your sentences! 

Các câu dưới đây hỏi về làm thế nào để giải quyết vấn đề này trong emacs:

How do I get Emacs to fill sentences, but not paragraphs?

tôi muốn biết cách mọi người đối phó với điều này trong các biên tập viên khác, bao gồm vim, TeXShop, TextMate và bất kỳ người nào khác mà bạn cho rằng sẽ hữu ích khi thu thập ở đây. Tư vấn về bao bì mềm và cứng cũng được chào đón.

+0

Sử dụng trình chỉnh sửa có bọc mềm? – garrow

Trả lời

3

Tôi nghĩ giải pháp đơn giản nhất là chỉ thêm dòng mới sau khi dừng đầy. Các chỉnh sửa của bạn sau đó sẽ không bao giờ là dòng phân đoạn. Lưu ý rằng đối với văn xuôi bạn rất có thể dựa vào tính năng gói dòng của trình soạn thảo của bạn để bọc câu dài - trừ khi bạn nhấn mạnh vào thụt vào nó như bạn làm với mã (tôi không thụt lề nhiều bằng latex),

+0

Điều này chắc chắn sẽ hoạt động, nhưng ban đầu tôi từ chối nó (vẫn sẵn sàng để bị thuyết phục) bởi vì nó đặt nhu cầu về sự lựa chọn của các cộng tác viên của tôi. – dmckee

+0

Nghiêm túc: mọi người có sử dụng trình chỉnh sửa không thể bao gồm đường không? – yungchin

+0

Mọi người chắc chắn sử dụng trình soạn thảo có _set_ không. YMMV và tất cả những điều đó. – dmckee

1

Vim:

bạn có thể tắt văn bản và đóng gói (set formatoption-=t) và nó sẽ không thêm linebreaks trừ khi bạn nhấn enter. Vẫn còn tốt hơn, nếu bạn có thể tìm ra cách để thiết lập các tùy chọn 'comments' để nó nhận ý kiến ​​của bạn, bạn có thể đặt một chiều rộng tính năng tự động quấn chỉ để lấy ý kiến ​​của bạn và không cho bất cứ điều gì khác:

set comments=b:% 
set textwidth=80 
set formatoption+=c 
set formatoption-=t 

Đây là phương pháp tôi sử dụng để nhận xét của tôi gọn gàng, nhưng mã của tôi không bị xáo trộn trừ khi tôi tự làm.

0

Tất cả điều này dường như là một cách khá giả vờ làm việc xung quanh một giới hạn khác biệt. Tại sao không tạo ra một câu nhạy cảm khác hơn là vặn vẹo với nguồn của bạn?

+0

Làm cách nào để biết khi nào là dựa trên dòng và khi nào là dựa trên câu? Trong mọi trường hợp, tôi nghĩ rằng lý do từ 1 đến 4 là đủ hấp dẫn mà tôi không nghĩ rằng nó là giả tạo. Tôi nghĩ nhược điểm lớn nhất là nó làm cho tài liệu của bạn nhỏ gọn hơn. – dreeves

0

Tôi muốn biết làm thế nào mọi người đối phó với này trong biên tập viên khác,

FWIW trên nền tảng Windows, trình biên tập Zeus có một cấu hình lề phải và tích hợp sẵn trong dòng bọc chức năng.

Vì vậy, ví dụ, với lề phải thiết lập để nhân vật, đánh dấu văn bản ví dụ của bạn và sau đó sử dụng Macros, Linewrap Đoạn menu, Zeus sẽ định dạng văn bản như sau:

As you edit the proseit will get all chopped up, 
like this. Normally you'd do a "reformat 
paragraph"to clean it up, but thenyou lose the 
newlines at the ends of your sentences! 

Bao bì là cứng trong đó tất cả các dòng ở trên đều có ký tự cuối dòng được chèn vào.

+0

Đó là dòng mới giữa "... này". và "Thông thường ..." mà tôi muốn bảo tồn. – dreeves

+0

Tôi đoán một giải pháp là tạo một macro nối tất cả các dòng của vùng được đánh dấu vào một dòng và sau đó có macro chia dòng bằng cách thay thế tất cả các dấu chấm/dấu chấm than bằng dấu chấm than/dấu chấm than và dòng mới. Bất kỳ trình chỉnh sửa tập lệnh nào (kể cả Zeus) đều có thể thực hiện việc này. – jussij

+0

Nó sẽ phải được thông minh về nó, vì có rất nhiều giai đoạn không kết thúc và tiếng nổ và như vậy. – dreeves

1

Trình soạn thảo văn bản thông thường không được cố thay đổi tệp bạn viết, trừ khi bạn yêu cầu nó một cách rõ ràng. Nó có thể thay đổi sự xuất hiện của tập tin trên màn hình để dễ đọc, nhưng đó là nó.

Do đó, hầu hết các biên tập viên giỏi trong trải nghiệm của tôi đều gói gọn và giữ ngắt dòng của bạn bất cứ nơi nào bạn chèn chúng.

Đó là tất cả. Tôi phải thú nhận tôi không thể nhìn thấy những gì fuss là về, trừ khi bạn đang sử dụng một số biên tập viên văn bản khá lạ mà nhấn mạnh vào làm kết thúc tốt đẹp và cần cách giải quyết.

Nếu bạn muốn giữ định dạng hữu ích cho khác biệt, chỉ cần thực hiện ngắt dòng sau mỗi câu và chấp nhận khác biệt đó sẽ hoạt động ở cấp câu.

0

bạn không muốn dòng mới ở cuối câu.

chắc chắn sẽ dễ dàng hơn để làm 4 điều bạn liệt kê, nhưng điều đó không đáng làm việc khác với phần còn lại của thế giới (ngay cả khi các lý do trên thế giới ngu ngốc như lý do đằng sau CR LF = newline) .

và lợi thế lớn nhất của bạn là không đúng sự thật:

Nếu bạn kết thúc với cuộc xung đột nơi nó chỉ thông báo cho bạn "những sau hai phiên bản của đoạn khổng lồ này là mâu thuẫn".

Làm cách nào để biết khi nào là dựa trên dòng và khi nào là dựa trên câu?

bạn có thể sử dụng công cụ Meld hoặc một số công cụ tìm kiếm tương tự khác và để nó hoạt động.

+0

Bạn có lưu ý rằng ông đang nói về việc chỉnh sửa nguồn của tài liệu LaTeX có tình huống tương tự ở đây hình dạng của tệp đầu vào có hạn chế về hình dạng của đầu ra được định dạng. Và làm như vậy trong một môi trường cộng tác? Trường hợp đặc biệt. Chúc mừng. – dmckee

+0

có, ngay cả trong khoảng trắng html/latex và dòng mới trong một số trường hợp có ý nghĩa. và chỉ bỏ qua chúng ở mọi nơi sẽ khiến bạn gặp rắc rối, đặc biệt là nếu bạn muốn làm việc cộng tác. – oberhamsi

1

Trong vim, bạn có thể điền vào cuối câu hiện tại với gw). Nó sẽ không định dạng lại toàn bộ đoạn hoặc khu vực cho bạn, nhưng nếu bạn cẩn thận để chèn dòng mới sau mỗi câu, và bạn định dạng lại với gw) khi bạn viết, nó hoạt động khá tốt.

1

Dù bạn làm gì, vui lòng không sử dụng trình chỉnh sửa tự động kết thúc tốt đẹp toàn bộ tài liệu nếu bạn đang ở trong môi trường cộng tác.Bạn bè không cho phép bạn bè sử dụng WinEdt.