มีวิธีลบ“ เพิ่งใช้งาน” ออกจากการเปิดและบันทึกข้อความโต้ตอบอย่างสมบูรณ์หรือไม่?


26

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

ฉันได้อ่านคำถามนี้:

ฉันจะหยุดแอพไม่ให้เลือก "เพิ่งใช้แล้ว" โดยค่าเริ่มต้นในกล่องโต้ตอบตัวเลือกไฟล์

อย่างไรก็ตามฉันแค่ต้องการให้ตัวเลือกนี้ถูกลบออกอย่างสมบูรณ์

เป็นเรื่องน่ารำคาญที่ต้องคอยหลีกเลี่ยงการนำทางจากค่าเริ่มต้น

ความล้มเหลวด้านบนมีวิธีทำให้โฮมไดเร็กตอรี่ของฉันเป็นค่าเริ่มต้นหรือไม่?


1
ขอบคุณ fossfreedom แต่นี่ไม่ใช่สิ่งที่ซ้ำกัน - ฉันต้องการลบสถานที่ที่ใช้ล่าสุดทั้งหมดออกจากกล่องโต้ตอบทั้งหมด ฉันไม่ต้องการมัน ฉันไม่เคยใช้และไม่ชอบ
dunderhead

3
นี่เป็นค่าเริ่มต้นที่น่าสะพรึงกลัว ทำไมทุกคนต้องการเลื่อนดูรายการไฟล์ยาว ๆ หวังว่าไฟล์เหล่านั้นจะอยู่ที่นั่นเมื่อพวกเขาสามารถส่งไปยังโฟลเดอร์หลักของพวกเขาได้ซึ่งไฟล์ที่ต้องการใด ๆ ของพวกเขาน่าจะอยู่ห่างออกไปเพียงไม่กี่คลิก นอกจากนี้ยังเป็นการขัดขวางผู้ใช้ไม่ให้ทราบว่าไฟล์ของพวกเขาถูกเก็บไว้ที่ไหนและเมื่อใดที่ไฟล์ของพวกเขาหายไปจากรายการนั้น crutch ของพวกเขาหายไปและพวกเขาอาจใช้เวลานานในการค้นหาระบบไฟล์ของพวกเขาอย่างเจ็บปวด
weberc2

1
@ weberc2 - ฉันเห็นด้วย นี่เป็นค่าเริ่มต้นที่บ้าเมื่อไม่มีทางเปลี่ยน! เหตุใดจึงบังคับให้ผู้ใช้มีความไม่สะดวกและเสียเวลาเนื่องจากการออกแบบที่ยืดหยุ่นเช่นนี้
dunderhead

คำตอบ:


7

ขอบคุณ saji89 ที่เชื่อมโยงไปยังไฟล์ที่ได้รับผลกระทบ ในกรณีที่ใคร ๆ ก็ยังใส่ใจ (และสำหรับตัวฉันเองเพราะการอัพเกรดล่าสุดอนุญาตให้ย้อนกลับไป) ฉันได้สร้างแพทช์ ( http://pastebin.com/VE4STB6M ) เพื่อแก้ไขข้อผิดพลาดที่น่ารำคาญนี้ gtk ที่ได้รับการแก้ไขจะยังคงแสดง "ใช้แล้วล่าสุด" ในกล่องโต้ตอบ แต่จะไม่ถูกเลือกในกล่องโต้ตอบตามค่าเริ่มต้น (ซึ่งจะเป็นค่าเริ่มต้นสำหรับไดเรกทอรีสุดท้ายที่ใช้ สำหรับฉันนี่เป็นการแก้ไขปัญหาได้เนื่องจากมือจับหลักของฉันกำลังปรากฏขึ้นบนใบหน้าของฉันโดยเฉพาะเมื่อพยายามบันทึกบางอย่าง

คำแนะนำทีละขั้นตอน:

1) เปิดหน้าต่างเทอร์มินัลและป้อนคำสั่งต่อไปนี้:

mkdir recently_used_fix

cd recently_used_fix/

sudo apt-get build-dep gtk+2.0

apt-get source gtk+2.0

wget -O deselect_recently_used.patch http://pastebin.com/download.php?i=VE4STB6M

patch -p0 < deselect_recently_used.patch

cd gtk+2.0-2.24.10/

echo jlj | dpkg-source --commit

sudo dpkg-buildpackage

cd ..

2) ปิดตัวจัดการแพ็กเกจใด ๆ (เช่น Synaptic) และป้อนคำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัล:

sudo dpkg -i *.deb

3) หากdpkg -iคำสั่งให้ข้อผิดพลาดเกี่ยวกับการเขียนทับไฟล์ที่มีอยู่จำนวนหนึ่ง (changelogs และอื่น ๆ ) ให้ใช้เพื่อลบไฟล์แต่ละไฟล์ที่ถูกร้องเรียนจากนั้นทำซ้ำขั้นตอนที่ 2 ฉันสังเกตว่าไม่ได้ทำงานด้วยเหตุผลใดก็ตามsudo rm FILENAME--force-overwrite

4) ทางเลือก: เมื่อติดตั้งแพคเกจสำเร็จแล้วให้ใช้ Synaptic เพื่อตรึง / ( Package > Lock Version) แต่ละแพ็คเกจที่ติดตั้งไว้เพื่อหลีกเลี่ยงการทำสิ่งเหล่านี้อีกครั้ง (แน่นอนว่าคุณจะพลาดการอัพเดทความปลอดภัยด้วย)

5) ปิดและเปิดแอปที่ได้รับผลกระทบใด ๆ (pluma, gedit, gimp, ฯลฯ ) และเพลิดเพลินไปกับกล่องโต้ตอบเปิด / บันทึกที่น่ารำคาญ!

6) ทางเลือก: ป้อนคำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลเพื่อลบไฟล์และไดเรกทอรีที่เราสร้าง (การแก้ไขจะยังคงติดตั้งอยู่):

cd ..

sudo rm -rf recently_used_fix/

ในกรณีที่ไม่สามารถดาวน์โหลดโปรแกรมแก้ไขได้นี่เป็นสำเนาสำรอง:

--- gtk + 2.0-2.24.10 / gtk / gtkfilechooserdefault.c 2011-11-08 10: 20: 20.000000000 -0700
+++ ดาวน์โหลด / gtk / gtk + 2.0-2.24.10 / gtk / gtkfilechooserdefault.c 2012-07-10 17: 20: 38.000000000 -0700
@@ -5971,10 +5971,18 @@ gtk_file_chooser_default_map (GtkWidget

   if (impl-> operation_mode == OPERATION_MODE_BROWSE)
     {
+ GFile * โฟลเดอร์;
+
       สวิตช์ (impl-> reload_state)
         {
         กรณี RELOAD_EMPTY:
- latest_shortcut_handler (impl);
+ / * ผู้ใช้ไม่ได้ให้โฟลเดอร์ที่จะแสดงกับเราอย่างชัดเจนดังนั้นเราจะ
+ * ใช้อันที่บันทึกไว้จากการเรียกใช้ครั้งสุดท้ายของตัวเลือกไฟล์
+ * /
+ folder = get_file_for_last_folder_opened (impl);
+ gtk_file_chooser_set_current_folder_file (GTK_FILE_CHOOSER (impl), โฟลเดอร์, NULL);
+ g_object_unref (โฟลเดอร์);
+ / * recent_shortcut_handler (impl); * /
           ทำลาย;

         กรณี RELOAD_HAS_FOLDER:
@@ -6005,8 +6013,8 @@ gtk_file_chooser_default_unmap (GtkWidge

   settings_save (impl);

- cancel_all_operations (impl);
- impl-> reload_state = RELOAD_EMPTY;
+ / * cancel_all_operations (impl);
+ impl-> reload_state = RELOAD_EMPTY; * /

   GTK_WIDGET_CLASS (_gtk_file_chooser_default_parent_class) -> unmap (วิดเจ็ต);
 }

ขอบคุณ Calamari! นี่คือสิ่งที่ยอดเยี่ยมเกี่ยวกับชุมชน Linux ข้อผิดพลาดโง่และเจตนาสามารถแก้ไขได้ แต่เนื่องจากวิธีที่ Gnome ดูเหมือนว่าตั้งใจจะเก็บสิ่งนี้และข้อบกพร่องอื่น ๆ เช่นนั้นฉันได้ติดตั้ง Debian และ XFCE แล้วและฉันกำลังทำการบูทสองระบบในขณะที่ฉันเสร็จสิ้นขั้นตอนการย้ายข้อมูลอย่างสมบูรณ์จาก Ubuntu, Unity และ Gnome
dunderhead

@calamari ดีใจที่รู้ว่าคำตอบของฉันช่วยคุณในการโพสต์คำตอบที่ชัดเจนยิ่งขึ้น
saji89

ขอขอบคุณ Calamari อีกครั้ง กระบวนการโยกย้ายไปยัง Debian ด้วย XFCE ของฉันใกล้จะเสร็จสมบูรณ์ แต่ฉันรู้สึกผิดหวังที่พบว่าเรื่องไร้สาระนี้ก็เกิดขึ้นในแอปที่นั่นด้วย ดังนั้นฉันจึงทำตามคำแนะนำที่ยอดเยี่ยมของคุณและใช้โปรแกรมปรับปรุง (ในกรณีที่เป็นประโยชน์สำหรับผู้อื่นที่อาจต้องการใช้โปรแกรมแก้ไข: เตรียมให้ใช้เวลาสักครู่ - ใช้เวลาประมาณ 15 นาทีบนเครื่องของฉัน) ฉันยินดีที่จะรายงานว่ามันใช้งานได้! แต่แปลกมีหนึ่งแอพที่ฉันได้พบซึ่งดื้อดึงปฏิเสธที่จะเล่นเป็นอย่างดี: Gedit! นั่นไม่ใช่ปัญหา แต่; ฉันจะถอนการติดตั้ง Gedit และใช้อย่างอื่น
dunderhead

หลังจากแพตช์แล้ว Synaptic กำลังรายงาน libgtk2.0-dev ว่าเสียหาย คุณมีคำแนะนำเกี่ยวกับสิ่งที่ฉันควรทำอย่างไรเกี่ยวกับเรื่องนี้?
dunderhead

ฉันใช้ Synaptic เพื่อแก้ไขแพ็คเกจที่ใช้งานไม่ได้โดยอัตโนมัติและตอนนี้ดูเหมือนว่าใช้ได้
dunderhead

3

มันเป็นไปไม่ได้อย่างแท้จริงที่จะทำเช่นนั้นเนื่องจากโค้ดที่เกี่ยวข้องกับโค้ดนั้นถูกเข้ารหัสลงในฐานข้อมูล gedit

นี่คือข้อความการยอมรับ gedit ที่เกี่ยวข้องที่เกี่ยวข้องกับการเปลี่ยนแปลงนี้ในรหัส Gedit- http://git.gnome.org/browse/gtk+/commit/?id=ca74dc6a873bb375bb2abc3ea7642ed41e9f6e79

มารยาท: http://tstarling.com/blog/2011/11/file_chooser_recent/

ดังนั้นหากไม่มีใครเปลี่ยนรหัสสำหรับสิ่งนี้และเปลี่ยนเป็นการตั้งค่าที่ผู้ใช้สามารถตั้งค่าได้ฉันขอโทษที่จะกล่าวว่าดูเหมือนจะไม่มีทางออกโดยตรง


1
ขอบคุณ, saji89, สำหรับการโพสต์ที่เป็นประโยชน์และเป็นประโยชน์ของคุณ, และลิงค์ไปยังบทความที่ยอดเยี่ยมโดย Tim Starling. ไม่ยืดหยุ่นและสำหรับฉันการออกแบบ UI ที่งี่เง่าเช่นนี้คือสาเหตุที่ฉันได้ลองใช้ Debian LXDE และ XFCE เมื่อเร็ว ๆ นี้ ฉันเบื่อกับวิธีที่อูบุนตูและ Gnome กำลังมุ่งหน้าและฉันกลัวว่ามันจะแย่ลงเรื่อย ๆ ดังนั้นฉันจึงตัดสินใจเดินหน้าต่อไป
dunderhead

dunderhead ขอโทษจริง ๆ ที่ได้ยินว่า นอกเหนือจากข้อบกพร่องที่งี่เง่าฉันยังรู้สึกว่า Ubuntu และ gnome กำลังมุ่งหน้าสู่อนาคต เพียงแค่ว่าฉันยังคงอยู่ที่ด้านของสิ่งต่าง ๆ และประเภทของอินเทอร์เฟซ Unity ใหม่ของ Ubuntu ใช่พวกเขากำลังคิดวิธีกล้าพูดได้ดีกว่าว่า "ออกจากกล่อง" แต่นั่นไม่ได้พิสูจน์ให้เห็นถึงข้อบกพร่องโง่ ๆ โชคดีที่ทางเลือกนั้นเป็นของเราเสมอ :)
saji89

0

ฉันไม่รู้ว่าจะทำสิ่งที่คุณต้องการ แต่ฉันคิดว่ามันอาจช่วยแก้ปัญหาของคุณได้

คุณต้องใช้ซอฟต์แวร์ชื่อ Activity Log Manager

sudo add-apt-repository ppa:zeitgeist/ppa 
sudo apt-get update && sudo apt-get dist-upgrade
sudo apt-get install activitylogmanager

ค้นหากิจกรรม Log manager ในเส้นประและเรียกใช้

ข้อมูลเพิ่มเติมสามารถดูได้ที่OMG Ubuntu!


ขอบคุณ Sarvesh แต่ฉันได้ติดตั้งไปแล้ว สิ่งที่ฉันต้องการคือการลบเอกสารล่าสุดออกจากกล่องโต้ตอบทั้งหมดซึ่งจะช่วยให้ฉันได้รับคลิกที่ไม่จำเป็นหลายพันรายการต่อปี! เมื่อฉันต้องการเปิดไฟล์ฉันจะต้องคลิกที่โฮมไดเร็กตอรี่ของฉันเพื่อไปยังที่ว่างเปล่าและไดเรกทอรี 'เอกสารล่าสุด' ที่ไร้ประโยชน์ซึ่งไดอะล็อกนั้นจะเป็นค่าปริยาย
dunderhead

0

ฉันคิดว่านี่คือสิ่งที่คุณกำลังมองหา: http://www.addictivetips.com/ubuntu-linux-tips/how-to-delete-and-disable-recent-history-in-ubuntu-tip/

หากต้องการลบประวัติล่าสุดให้เปิดTerminalและป้อนคำสั่งด้านล่าง:

rm ~/.local/share/zeitgeist/activity.sqlite
zeitgeist-daemon --replace

เพื่อป้องกันการสร้างไอเท็มใหม่ให้ใช้คำสั่งเหล่านี้:

echo -n > ~/.recently-used.xbel
sudo chattr +i ~/.recently-used.xbel

คุณสามารถย้อนกลับการเปลี่ยนแปลงเพื่อเปิดใช้งานการบันทึกอีกครั้งโดยใช้คำสั่ง Terminal ต่อไปนี้:

sudo chattr -i ~/.recently-used.xbel

บางระบบอาจจัดเก็บไฟล์ที่ใช้ล่าสุดในตำแหน่งอื่น:

echo -n > ~/.local/share/recently-used.xbel
sudo chattr +i ~/.local/share/recently-used.xbel

1
ขอบคุณ BlueXrider แต่นั่นไม่ใช่สิ่งที่ฉันเป็นหลังจากนั้น ฉันปิดใช้งานประวัติแล้ว กล่องโต้ตอบบันทึกและเปิดเป็นค่าเริ่มต้นเป็นใช้ล่าสุดในบานหน้าต่างด้านซ้าย แต่ฉันต้องการให้ใช้ค่าเริ่มต้นที่บ้านของฉันหรือดีกว่ายังคงเป็นไดเรกทอรีที่ฉันเลือก
dunderhead

2
ฉันคิดว่ามันน่ารำคาญเป็นสองเท่าเมื่อค่าเริ่มต้นไดอะล็อกการบันทึกเป็นค่าที่ใช้ล่าสุดแทนที่จะเป็นไดเรกทอรีจริงของไฟล์ อาจมีบางครั้งที่ฉันใช้การบันทึกเป็นเพียงการค้นหาไดเรกทอรีใดไฟล์เป็นจริงในบางโปรแกรม นอกจากนี้หากฉันต้องการบันทึกข้อมูลสำรองฉันอาจต้องการให้มันอยู่ในไดเรกทอรีเดียวกับไฟล์นั้น อย่างน้อยที่สุดควรใช้อย่างน้อยที่สุดจะแสดงไดเรกทอรีของไฟล์ปัจจุบันที่ด้านบนเป็นค่าเริ่มต้น
Marty ผัด

0

นี่เป็นเธรดอายุสามปี แต่ดูเหมือนว่าการ peeps GTK2 ทำให้เป็นตัวเลือกการกำหนดค่า

ไปลงในและชุด~/.config/gtk-2.0/gtkfilechooser.ini StartupMode=cwdมันไม่ได้กำจัดสิ่งไร้สาระ แต่อย่างน้อยที่สุดมันก็ไม่ใช่สิ่งผิดปกติ

หมายเหตุ: ฉันไม่พบสิ่งนี้ในเอกสาร; แพตช์ด้านบนล้มเหลวและเมื่อฉันตรวจสอบว่าทำไมฉันจึงพบว่า devs ทำให้มันเป็นไปได้โดยไม่ต้องรวบรวมสิ่งนั้น


-1

ฉันพบวิธีอย่างน้อยป้องกันไม่ให้ Zeitgeist สร้างประวัติเลย (ฉันคิดว่า):

rm ~/.local/share/zeitgeist/activity.sqlite
mkdir ~/.local/share/zeitgeist/activity.sqlite

ตั้งแต่นั้นมาฉันก็ไม่มีกิจกรรมใด ๆ ของฉันที่ถูกบันทึกไว้ในทางใดทางหนึ่งรวมถึงกล่องโต้ตอบ "ที่ใช้งานล่าสุด" น่าเศร้าที่มันยังคงปรากฏขึ้น แต่อย่างน้อยก็ไม่ได้บอกว่าโฟลเดอร์ใดที่ฉันเข้าชมเมื่อเร็ว ๆ นี้ ฉันไม่ชอบเมื่อฉันตรวจสอบอย่างถาวรแม้ว่าจะเป็นเครื่องของฉันเอง

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


มีไฟล์กิจกรรมเพิ่มเติมในโฟลเดอร์นี้เช่น activity.sqlite.bck, activity.sqlite-shm และ activity.sqlite-wal activity.sqlite.bck น่าจะเป็นข้อมูลสำรอง ไม่ทราบว่าคนอื่นทำอะไร แต่ฉันคิดว่าการบันทึกเป็นเพียงการลบออกด้วย
kamshi

1
สิ่งที่mkdir ~/.local/share/zeitgeist/activity.sqliteควรทำ

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