ฉันสามารถเลื่อนไปยังบรรทัดใหม่โดยใช้ล้อเลื่อนของเมาส์ภายในคอมไพล์ diff หรือไม่?


13

ฉันใช้เทอร์มินัลเริ่มต้นของ Ubuntu 16.04 (เป็น GNOME ที่ฉันเชื่อหรือไม่)

ปัญหาที่ฉันเผชิญคือเมื่อฉันใช้git diffคำสั่งเพื่อตรวจสอบการเปลี่ยนแปลงในท้องถิ่นของฉันฉันสามารถเลื่อนขึ้น / ลงโดยใช้ล้อเลื่อนของเมาส์ได้ แต่ไม่มีบรรทัดใหม่ปรากฏขึ้นเมื่อฉันไปถึงด้านล่าง (ดังนั้นฉันจึงเห็นเพียงหน้าเดียวของ การเปลี่ยนแปลง) เพื่อไปยังบรรทัดถัดไปฉันสามารถใช้พื้นที่หรือลูกศรขึ้น / ลงของแป้นพิมพ์ได้ แต่ฉันสามารถใช้ล้อเลื่อนของเมาส์ได้หรือไม่?

BTW ถ้าฉันใช้lessคำสั่งมันทำงานตามที่คาดไว้ -> การเลื่อนลงไปที่บรรทัดใหม่

คำตอบ:


22

ขอบคุณ@edwinkslคำตอบของฉันจัดการเพื่อหาวิธีการแก้ปัญหา

ดังนั้นโดยใช้คอมไพล์เริ่มต้นเป็นเพจเจอร์และผมเชื่อว่าข้อโต้แย้งเริ่มต้นเป็นLESSFRSX

ใน git 1.8+ คุณสามารถลบตัวเลือกด้วยless -+<option>ในกรณีของฉันฉันต้องลบXตัวเลือกดังนั้น:

git config --global --replace-all core.pager 'less -+X'

แต่เมื่อ@pcworldพูดถึงสิ่งนี้อาจทำให้เกิดปัญหากับ diffs ที่พอดีกับหน้าเดียวดังนั้น:

git config --global --replace-all core.pager 'less -+FX'

แก้ไขปัญหาการเลื่อนสำหรับฉัน


3
ฉันต้องการเพิ่ม-+Fตัวเลือกของlessหรืออื่น ๆ เอาท์พุทที่เหมาะกับหน้าจอเดียวที่ว่างเปล่า โปรดทราบว่าตัวเลือกทั้งสองแบบที่รวมกันนั้นจะส่งออกของ git ผ่านเพจเจอร์แม้ว่ามันจะพอดีกับหน้าจอเดียว อย่างไรก็ตามมีสคริปต์เสื้อคลุมน้อยว่าสายน้อยเฉพาะในกรณีที่การส่งออกเกินกว่าขนาดของหน้าจอ ดูความเห็น # 10 และ # 11 ในข้อผิดพลาด Debian นี้และคำถามนี้มีน้อยลงสำหรับรายละเอียดทางเทคนิคเพิ่มเติม
pcworld

3

จาก/programming//a/2183920/486919วิธีหนึ่งในการทำเช่นนี้และคงไว้ซึ่งการเน้นที่แตกต่างคือการใช้git diffโดยไม่มีเพจเจอร์:

git --no-pager diff

ขอบคุณสำหรับคำตอบนี้ช่วยฉันค้นหาวิธีแก้ปัญหาที่แน่นอนที่ฉันค้นหา -> เปิดใช้งานการเลื่อนล้อเลื่อนของเมาส์ ในขณะที่การลบเพจเจอร์เป็นงานที่ดีฉันต้องการเริ่มอ่านแตกต่างจากจุดเริ่มต้น
Todor

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