เหตุใด Notepad ของ Windows Vista จึงเลื่อนเคอร์เซอร์แบบสุ่มหลังจากบันทึกไฟล์


15

เกิดอะไรขึ้น:

เคอร์เซอร์ของฉันเริ่มต้นที่ เมื่อฉันกดCtrl+Sเพื่อบันทึกไฟล์เคอร์เซอร์ของฉันจะเลื่อนไปยังตำแหน่งที่สองโดยอัตโนมัติ

หลังจากพยายามหลายครั้งฉันเห็นว่ามันสุ่มย้ายไปที่จุดหนึ่งหรือสองบรรทัดเหนือสถานที่ที่มันเริ่มต้น

ข้อความแสดงแทน

(เส้นสีแดงคือเคอร์เซอร์ - ฉันวาดมันเองเพราะมันจะไม่ปรากฏในหน้าจอ)

มีใครสังเกตเห็นสิ่งนี้หรือไม่?

รุ่น Notepad ของฉันคือ:

ข้อความแสดงแทน

มันเป็นปัญหาตั้งแต่ฉันพิมพ์ต่อไปและเมื่อใดก็ตามที่ฉันบันทึกฉันต้องนำเคอร์เซอร์ไปยังตำแหน่งที่ถูกต้องด้วยตนเองไม่เช่นนั้นฉันจะพิมพ์ที่ไหนสักแห่งระหว่างบรรทัด!


1
ฉันเดาว่าควรมีบางภาพในโพสต์ แต่แสดงเฉพาะข้อความ "alt text" สำหรับฉัน
ต. Kaltnekar

@T Kaltnekar ตอนนี้ได้รับการแก้ไขแล้วหรือยัง
Lazer

ใช่ภาพสามารถมองเห็นได้ในขณะนี้
ต. Kaltnekar

ดูเหมือนว่าจะเป็นข้อผิดพลาดฉันสามารถทำซ้ำได้ ดูเหมือนว่ามันเกี่ยวข้องกับการห่อคำอย่างใด แนะนำให้คุณใช้ notepad ++ ตามที่แนะนำ
ต. Kaltnekar

1
จากการทดสอบที่ฉันทำ - ถ้าฉันเพิ่มตัวอักษรสองสามตัวและบันทึกไม่ได้ย้าย ถ้าฉันเพิ่มข้อความให้มากพอดังนั้นมันก็จะถูกพันปลายเคอร์เซอร์บรรทัดหลังจากบันทึกแล้ว บ่อยครั้งมันก็ยิ่งเคลื่อนไหวมากขึ้น
ต. Kaltnekar

คำตอบ:


25

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

เหตุใดเคอร์เซอร์จึงเคลื่อนที่ เมื่อคุณบันทึกด้วยการตัดคำแผ่นจดบันทึกจะแทรกอักขระ CR CR LF ที่จุดตัดแต่ละจุดในหน้าต่างแสดงผล (แต่ไม่ใช่ในไฟล์ที่บันทึก) จำนวนตัวอักษรจากจุดเริ่มต้นของหน้าต่างการแสดงผลไปยังเคอร์เซอร์ยังคงเหมือนเดิม แต่เนื่องจากตัวอักษร CR CR LF พิเศษเคอร์เซอร์จะปรากฏขึ้นเพื่อเลื่อนถอยหลัง

สำหรับข้อมูลเพิ่มเติมและตัวอย่างขั้นตอนโดยขั้นตอนโปรดดูข้อผิดพลาด Notepad: Saving กับการตัดคำในการแทรกตัวอักษร CR CR LF ในหน้าต่างแสดงผล


1
ขอบคุณสำหรับการเพิ่มข้อมูล โพสต์ประกอบด้วยส่วนใหญ่ของการเชื่อมโยงที่มีกำลังใจที่นี่เพื่อลดปัญหาในอนาคตด้วยการเชื่อมโยงที่ขาด
ต้มตุ๋น quixote

คำตอบที่ฉันรอ!
Lazer

1
ที่จริงแล้วข้อผิดพลาดนี้กลับไปสู่ยุคของ Windows for Workgroups 3.11 (อาจย้อนกลับไปได้อีก) ฉันเคยใช้ Windows Write บ่อยครั้งและมันก็ทำสิ่งเดียวกันทุกครั้งที่คุณประหยัดด้วยการใช้ word wrap บนแม้ว่ามันจะเปลี่ยนการตัดคำด้วยเล็กน้อย แต่ไม่ปรับปรุงการแสดงผล เมื่อ Windows 95 ออกมาการเขียนถูกเปลี่ยนชื่อเป็น Notepad และข้อผิดพลาดของเคอร์เซอร์ยังคงอยู่ซึ่งมันจะยังคงอยู่ กล่าวอีกนัยหนึ่งข้อผิดพลาดนี้มีอยู่อย่างน้อย 20 ปีและยังคง M $ ไม่ได้รับรอบในการแก้ไข
Kris Craig

2
เขียน - ฉันค่อนข้างแน่ใจว่าการเขียนไม่มีส่วนเกี่ยวข้องกับ Notepad Windows 3.1 และ 3.11 สำหรับ Workgroups มีทั้ง Notepad และ Write ซึ่งเป็นโปรแกรมแยกต่างหาก เทียบเท่าทันสมัยของการเขียนคือ WordPad ไม่ใช่ Notepad ฉันจำข้อผิดพลาดแบบนี้ไม่ได้ใน Write แต่ถ้ามีอย่างใดอย่างหนึ่งฉันสงสัยว่ามันไม่เกี่ยวข้องกับข้อผิดพลาด Notepad นี้ ข้อผิดพลาด Notepad เกิดจากการใช้ข้อความ EM_FMTLINES ที่ไม่ดีของการควบคุมการแก้ไขหลายบรรทัด ฉันคิดว่าการเขียนและ WordPad ใช้การควบคุมข้อความที่หลากหลายดังนั้นฉันสงสัยว่ามันเป็นสิ่งเดียวกัน @KrisCraig
Bavi_H

2
มีข้อบกพร่องนานแค่ไหน - ฉันใช้ Notepad เวอร์ชันใน Windows 3.1, 3.11 สำหรับ Workgroups, 95, XP, 7, 8, 8.1, และ 10 รุ่นจาก 3.1 ถึง 95 ไม่มีปัญหานี้และ รุ่นตั้งแต่ XP ถึง 10 มีข้อผิดพลาดนี้ ในโพสต์บล็อกนี้ผู้เขียนบอกว่าเขาสังเกตเห็นข้อผิดพลาดใน Windows 2000 และหลัง ฉันเดาว่าที่ไหนสักแห่งใน Windows 2000, Notepad ได้รับการแก้ไขเพื่อใช้ EM_FMTLINES และข้อผิดพลาดนี้ยังคงมีอยู่นับตั้งแต่
Bavi_H

9

ไม่ว่าจะเป็นข้อผิดพลาดหรือไม่หากคุณทำอะไรใน Notepad อย่างสม่ำเสมอเพื่อให้เป็นปัญหาคุณต้องเริ่มใช้โปรแกรมแก้ไขข้อความที่ดีกว่า ลองใช้ notepad ++ ฟรีสำหรับการเริ่มต้น - http://notepad-plus.sourceforge.net/


2
ฉันมี ... ปัญหาเกี่ยวกับ Notepad ++ การหยุดทำงานและ / หรือการเปิดไฟล์ค้างอยู่ในหลาย ๆ ระบบค่อนข้างบ่อย อื่น ๆ กว่าที่บรรณาธิการที่ดี;)
เอ็ดเอส

เห็นดังนั้นสำหรับรายชื่อของบรรณาธิการข้อความที่เป็นที่นิยม: stackoverflow.com/questions/14155/windows-based-text-editors
lexu

0

(ไม่สามารถโพสต์เป็นความคิดเห็นได้เพราะฉันมีชื่อเสียงไม่พอ)

ตามเว็บไซต์นี้มีการแก้ไขอย่างน้อย Windows 10 เวอร์ชัน 1511 (พฤศจิกายน 2558)

ตามเว็บไซต์นี้พบข้อผิดพลาดใน Windows 10 เมื่อวันที่ 18 ตุลาคม 2558

ถ้าเราจะโดยรุ่นที่สำคัญของระบบปฏิบัติการวินโดวส์ 10 รุ่นแรกเป็น 1507 แล้วรุ่นที่สำคัญต่อไปคือ 1511 ดังนั้นโดยการลดรุ่น 1511 จึงเป็นการอัพเดทครั้งแรกที่มีการแก้ไขข้อบกพร่องนี้


-2

เปิดตัวแก้ไขรีจิสทรีของคุณและในผู้ใช้ปัจจุบันค้นหาคีย์ต่อไปนี้:

HKEY_CURRENT_USER\Software\Microsoft\Notepad

แล้วก็

  1. สร้างค่า DWORD ใหม่ที่เรียกfSavePageSettingsและตั้งค่าเป็น "1"
  2. หากfSaveWindowPositionsไม่มีอยู่ให้สร้าง DWORD แล้วตั้งเป็น "1"

2
กุญแจเหล่านี้หมายถึงอะไรและมีผลอย่างไร
Der Hochstapler

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