พับ / ตัดบรรทัดที่ยาวเป็น w3m


5

ฉันกำลังมองหาตัวเลือกเพื่อตัดบรรทัดของ HTML ที่แสดงผลเป็น w3m เมื่อถึงความยาวที่แน่นอนกล่าวคือ 72 อักขระ ตามค่าเริ่มต้นข้อความจะขยายความกว้างทั้งหมดของหน้าต่างและการอ่านจะยาก นี่คือภาพหน้าจอที่แสดงให้เห็นว่าบทความมีลักษณะเป็นค่าเริ่มต้นในแบบเต็มหน้าจอ w3m:

w3m crappy long lines

ในหนังสือพิมพ์ฉันสามารถรับพฤติกรรมที่ฉันต้องการได้อย่างง่ายดาย text-width 72. บทความเดียวกันกับข้อความห่ออย่างใน newsbeuter:

newsbeuter nicely wrapped text

มีวิธีการตัดเส้นแบบนี้ที่ 72 ตัวอักษรใน w3m ไหม

ข้อมูลสำหรับมุมมองด้านบนมีอยู่ใน URL นี้:

https://www.quirksmode.org/blog/archives/2017/05/why_the_politic.html


คุณเคยลองทำอะไรบ้างหรือมีการวิจัยของคุณชี้ไปในทิศทางที่เฉพาะเจาะจงหรือเฉพาะเจาะจงสำหรับแนวทางแก้ไขปัญหาที่อาจเกิดขึ้นสำหรับปัญหานี้หรือไม่?
Pimp Juice IT

คำตอบ:


5

วิ่ง w3m ด้วยตัวเลือกที่เกี่ยวข้องเพื่อดัมพ์เพจที่จัดรูปแบบไปยังเอาต์พุตมาตรฐาน less คำสั่ง อย่างไรก็ตามไม่มีตัวเลือกดังกล่าวในไฟล์กำหนดค่า w3m

ตัวเลือกอะไรและอย่างไร

หน้าคู่มือ w3m (1) ได้กล่าวถึงตัวเลือกต่อไปนี้

   -dump  dump formatted page into stdout

   -cols width
          specify column width (used with -dump)

ในการตั้งค่าความกว้างคอลัมน์ที่ 72 ใช้ตัวเลือกเหล่านี้ดังนี้

$ w3m -dump -cols 72 [URL or filename]

ตั้งแต่ -dump ตัวเลือกสร้างเอาต์พุตมาตรฐานคุณไม่สามารถเรียกดูตามปกติได้ (w3m จะถ่ายโอนข้อมูลหน้าที่จัดรูปแบบและออก) ท่อถึง less เพื่อเรียกดูหน้าเว็บที่จัดรูปแบบ

$ w3m -dump -cols 72 [URL or filename] | less

คำสั่งหนึ่งบรรทัดสุดท้ายคือสิ่งที่คุณต้องการ

การเรียกดูตามปกติด้วย w3m

Browse w3m article on Wikipedia using w3m

การจัดรูปแบบการเรียกดูหน้าเว็บโดย w3m และน้อยกว่า

Browse w3m article on Wikipedia using w3m with dump option and pipe to less

ขอให้สังเกตว่าครึ่งแรกของหน้าถูกห่ออย่างดีภายในความกว้างคอลัมน์ที่ระบุ ภาพหน้าจอด้านบนกำลังอ่านบทความนี้: w3m บน Wikipedia .

หมายเหตุ

-dump ตัวเลือกจะลบการเชื่อมโยงหลายมิติทั้งหมดเข้าด้วยกันเมื่อสร้างหน้าจัดรูปแบบ หากความกว้างของคอลัมน์เป็นเกณฑ์เดียวที่คุณต้องการตัวเลือกนี้จะพอเพียง

จนถึงวันที่ตอบนี้ฉันไม่ทราบวิธีอื่นในการสงวนการเชื่อมโยง


มันจะเป็นไปได้ที่จะได้รับการห่อโดยการป้อน html ผ่าน Newsbeuter เพื่อ w3m
dionys

@dionys ฉันไม่คิดอย่างนั้น Newsbeuter เป็นโปรแกรมอ่าน RSS / Atom ซึ่งแสดงเนื้อหาจากฟีดและ ไม่ จากหน้า HTML เอง ชอบ แหล่งฟีด RSS 2.0 นี้ รวมเนื้อหา 'สะอาด' ของบทความ แต่ไม่แสดงใน RSS 1.0 หรือ Atom (ขึ้นอยู่กับการตั้งค่าบล็อก)
clearkimura

1

คุณสามารถเปลี่ยนจำนวนคอลัมน์ผ่านเทอร์มินัลได้ stty, เช่น., stty cols 72 จากนั้นเรียกใช้ w3m <url>. นั่นเป็นสิ่งที่ฉันทำในบางครั้ง

อย่างไรก็ตามมีปัญหาสองประการนี้:

  1. แม้ว่าคุณจะเป็นนามแฝง w3m ไปยัง stty cols 72 && w3mคุณยังคงต้องรีเซ็ตความกว้างของบรรทัดหลังเซสชันการเรียกดูหากคุณไม่ต้องการให้อยู่ที่ 72 คอลัมน์ ซึ่งอาจเป็นไปโดยอัตโนมัติผ่านสคริปต์ตัวห่อหุ้มเล็กน้อย

  2. เมื่อคุณอยู่ใน X Terminal stty การตั้งค่าจะเป็นโมฆะทันทีที่คุณปรับขนาดหน้าต่าง (ฉันได้ทดสอบสิ่งนี้ใน xterm และ urxvt)

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