คำถามติดแท็ก files

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

9
ฉันจะโหลดไฟล์ในบัฟเฟอร์ได้อย่างไร
ฉันมักจะทำงานกับไฟล์ที่มีการปรับปรุงในระบบไฟล์ผ่านการควบคุมเวอร์ชัน เป็นวิธีที่รวดเร็วในการโหลดไฟล์โดยไม่ต้องไปC-x C-fที่ไฟล์อีกครั้งและได้รับการถามว่าฉันต้องการที่จะโหลดมันคืออะไร?

5
แก้ไขไฟล์ด้วยสิทธิ์แบบผู้ใช้ขั้นสูง
เมื่อคุณต้องแก้ไขไฟล์ระบบมันเป็นสถานการณ์ปกติที่คุณเปิดตัว Emacs กับผู้ใช้ปกติก่อนดังนั้นไฟล์จะได้รับการป้องกันการเขียน ฉันจะทำอย่างไรเพื่อรับสิทธิ์รูต? ฉันหมายถึงบางสิ่งบางอย่างที่เหมือนตกM-x sudoปลา ฉันไม่ต้องการเรียกใช้ Emacs ในฐานะผู้ใช้ระดับสูงและฉันไม่ต้องการออกจากโปรแกรม
54 files 

2
ความแตกต่างระหว่างบัฟเฟอร์ไฟล์หน้าต่างและเฟรมคืออะไร
เมื่อโพสต์คำถามในเว็บไซต์นี้บางครั้งผู้คนพูดถึง"windows"เมื่อพวกเขาหมายถึง"เฟรม"และ"บัฟเฟอร์"หรือ"ไฟล์"เมื่อพวกเขาหมายถึง "หน้าต่าง" ดังนั้น: ถาม: อะไรคือความแตกต่างระหว่างบัฟเฟอร์ไฟล์หน้าต่างและเฟรม? (ฉันโพสต์คำถามนี้ในจิตวิญญาณของคำสั่งผสมคำถาม : เพื่อส่งเสริมการใช้คำที่ถูกต้อง)
28 buffers  window  frames  files 

2
บันทึกไฟล์ปัจจุบันด้วยชื่อที่แตกต่างกันเล็กน้อย
ไฟล์ของฉันมีชื่อไฟล์ยาวและส่วนหนึ่งของชื่อไฟล์คือวันที่และหมายเลขเวอร์ชัน บ่อยครั้งที่ฉันต้องการบันทึกไฟล์ในบัฟเฟอร์โดยใช้ชื่อเกือบเหมือนกันเพียงแค่เปลี่ยนหมายเลขรุ่นหรือวันที่ นี่จะง่ายกว่านี้ถ้าฉันมีคำสั่งซึ่งใส่ชื่อไฟล์ของบัฟเฟอร์ปัจจุบันลงใน kill ring เพื่อให้ฉันสามารถเปิดไฟล์จากนั้นพิมพ์C-x C-w(เขียนไฟล์) ดึงชื่อปัจจุบันด้วย Cy เปลี่ยนและบันทึก มัน. ฉันใช้ Emacs 24.3 บน Windows และ 24.4 บน Linux ฉันต้องใช้ชื่อไฟล์ที่แตกต่างกันและไม่ต้องคอมไพล์ด้วยเหตุผลต่าง ๆ ฉันยินดีหากคำสั่งนี้ทำงานกับ AUCTeX / LaTeX เป็นโหมดหลัก แก้ไข 1: ฉันทำผิดพลาด: ฉันไม่ต้องการพิมพ์C-x C-f(= ค้นหาไฟล์) แต่C-x C-w(= เขียนไฟล์) ฉันแก้ไขสิ่งนี้แล้ว แก้ไข 2: พบคำถามและคำตอบที่ซ้ำกัน: /unix//a/45381แต่ไม่มีคำตอบที่ดีกว่า! แก้ไข 3: ที่นี่: http://www.gnu.org/software/emacs/manual/html_node/elisp/File-Name-Components.htmlเป็นฟังก์ชันซึ่งเลือกส่วน "nondirectory" ของชื่อไฟล์: ฟังก์ชัน: file-name-nondirectory filename …
17 files 

3
ฉันจะค้นหาพา ธ ไปยังโปรแกรมที่เรียกใช้งานได้ด้วย Emacs Lisp ได้อย่างไร
กรณีการใช้งานปัจจุบันของฉันคือการค้นหาว่าCaskไฟล์ปฏิบัติการอยู่ที่ไหน(สามารถติดตั้งได้อย่างน้อยสองแห่งและมีปัญหาเกี่ยวกับเรื่องนี้) ฉันต้องการถังด้วยวิธีนี้: (require 'cask "~/.cask/cask.el") แต่ฉันจำเป็นต้องค้นหาเส้นทางที่ถูกต้องไปยังที่cask.elและเท่าที่ฉันรู้วิธีที่ง่ายที่สุดที่จะทำคือการหาที่ปฏิบัติการ ฉันจะทำสิ่งนี้ได้อย่างไร
16 elisp  files  cask 

6
แสดงรายการไฟล์และไดเร็กทอรีย่อยทั้งหมดซ้ำ ๆ
มีวิธีหนึ่งอาจใช้แพ็คเกจเพื่อเรียกรายการไฟล์ทั้งหมดซ้ำ (พร้อมพา ธ ) และไดเรกทอรีย่อย (หรืออย่างน้อยไดเรกทอรีย่อยที่ว่างเปล่าเนื่องจากเส้นทางไปยังวัตถุที่ไม่ว่างเปล่าสามารถรวบรวมได้จากเส้นทางของ ไฟล์ที่อยู่ในนั้น) ของไดเรกทอรีปัจจุบันหรือไม่? ที่ใกล้เคียงที่สุดที่ฉันสามารถหาได้คือprojectile-find-fileฟังก์ชั่นของprojectileแพ็กเกจ (หรืออีกวิธีหนึ่งคือhelm-projectile-find-fileฟังก์ชั่นของhelm-projectileแพ็กเกจ) แต่ดูเหมือนจะไม่สามารถแสดงรายการโฟลเดอร์ว่าง นอกจากนี้ดูเหมือนว่าจะใช้งานได้เฉพาะกับ Git และที่เก็บข้อมูลการควบคุมเวอร์ชันอื่น ๆ แต่อาจมีวิธีแก้ไขสำหรับข้อ จำกัด นี้
15 files 

2
เรียกใช้คำสั่งเมื่อเปิดไฟล์ประเภทไฟล์เฉพาะ
ฉันพยายามรับ lisp script เพื่อเรียกใช้คำสั่งบางอย่างสำหรับฉันเมื่อฉันเปิดไฟล์ประเภทไฟล์เฉพาะ ฉันรู้ว่าฉันกำลังทำงานในไฟล์ init ที่ถูกต้องเพราะถ้าฉันลบธีมออก emacs ไม่มีธีมเมื่อฉันเริ่มต้นทำงาน นี่คือสคริปต์ที่ฉันใช้ซึ่งใช้งานไม่ได้ (ไม่มีข้อผิดพลาดหรืออะไร): (defun my-project-hook (filename) (when (string= (file-name-extension filename) "ts") ((typescript-mode) (tss-setup-current-buffer)) ) ) (add-hook 'after-load-functions 'my-project-hook)

4
ฉันจะบอก Ido ให้พ้นทางได้อย่างไรเมื่อฉันสามารถวางชื่อไฟล์ได้แล้ว?
ฉันพยายามทำให้ตัวเองใช้โหมด Ido บางครั้งมันก็ดี แต่บางครั้งมันก็โง่มาก นี่คือความผิดหวังที่ยิ่งใหญ่ที่สุดของฉัน ฉันอ่านบันทึกที่มีชื่อเต็มจากนั้นคัดลอกชื่อหนึ่งลองเปิดไฟล์นั้น วิธีการทำเช่นนี้โดยไม่มี Ido: C-aC-yC-kRET ด้วย Ido มีสองปัญหาที่สำคัญ: หากฉันมีชื่อไฟล์ทั้งหมดไม่มีวิธีที่จะป้อนข้อมูลนั้น (ฉันต้องลบเครื่องหมายทับแรกไม่เช่นนั้นการกดอื่น ๆ//จะไม่ช่วยได้ ฉันไม่สามารถแก้ไขส่วนตรงกลางของชื่อไฟล์ที่เหลือโดยไม่แก้ไข หรือฉัน
14 files  ido 

1
วิธีป้องกัน Emacs จากการทำลายฮาร์ดลิงก์?
สมมติว่าฉันมีสองไฟล์file1และfile2: $ echo aaa >file1 $ ln file1 file2 จากนั้นฉันตรวจสอบว่า inodes เหมือนกัน: $ ls -i 18749779 file1 18749779 file2 ซึ่งแสดงให้เห็นว่าทั้งสองไฟล์เหมือนกันจริง ๆ ตอนนี้ฉันแก้ไขfile1ใน Emacs และเพิ่มบรรทัดด้วยเช่นข้อความbbbและบันทึกและออกจาก Emacs ตอนนี้ฉันได้รับ: $ ls -i 18749781 file1 18749779 file2 $ cat file1 aaa bbb $ cat file2 aaa ดังนั้นการเชื่อมโยงฮาร์ดเสีย โปรดทราบว่าสิ่งนี้จะไม่เกิดขึ้นเมื่อฉันแก้ไขไฟล์vimหรือถ้าฉันเพียงแค่ทำecho bbb >>file1.. ฉันจะป้องกัน Emacs จากการทำลายฮาร์ดลิงก์ได้อย่างไร ปรับปรุง: …
13 files 

1
แสดงขนาดโฟลเดอร์แบบเรียกซ้ำในสายงานในไดเรคทอรี?
ฉันต้องการแสดงขนาดแบบเรียกซ้ำ (ค่าที่จะรายงานโดยdu) ของเนื้อหาของโฟลเดอร์ในบรรทัดในบัฟเฟอร์ dired เป็นคอลัมน์เพิ่มเติมหรือแทนที่ขนาดไฟล์ไดเรกทอรี เป็นไปได้อยู่แล้วกับ dired / dire + หรือแพ็คเกจที่เกี่ยวข้อง? ฉันได้ทำการขุดและพบการสนทนาของฟังก์ชั่นประเภทนี้ แต่ไม่มีอะไรที่รวมข้อมูลขนาดนั้นกลับเข้าไปในส่วนต่อประสานกราฟิกของ dired https://www.emacswiki.org/emacs/DiredGetFileSize /superuser/462079/how-can-i-display-folder-sizes-in-emacs-dired
12 dired  files 

3
ใส่ชื่อไฟล์ปัจจุบันใน minibuffer
ฉันจะแทรกชื่อไฟล์ของบัฟเฟอร์ไฟล์ที่ใช้งานอยู่ในคำสั่งได้อย่างไร เมื่อฉันเรียกใช้คำสั่งที่ต้องการชื่อไฟล์ฉันมักจะทำเช่นนั้นจากบัฟเฟอร์ไฟล์และต้องการชื่อของไฟล์นั้นในขณะที่พิมพ์คำสั่งลงใน minibuffer ฉันกำลังมองหาสมมุติC-x…ว่าฉันสามารถพิมพ์ในระหว่างการสร้างบรรทัดคำสั่งใน minibuffer ดังนั้นหากในขณะที่บัฟเฟอร์ปัจจุบันเป็นไฟล์ชื่อLorem Ipsum.txtฉันพิมพ์สิ่งนี้: M-x grep RET 'foo' SPC C-x … RET M-xgrepRETของขวัญ minibuffer กระตุ้นสำหรับgrepคำสั่ง ในการตอบสนองฉันพิมพ์อาร์กิวเมนต์รูปแบบ regex ( 'foo') แล้วใส่อาร์กิวเมนต์ชื่อไฟล์ ( C-x…) minibuffer นั้นจะจบลงเมื่อ: grep -nH -e 'foo' 'Lorem Ipsum.txt' คำสั่งใดที่มีอยู่จะได้รับชื่อไฟล์บัฟเฟอร์ปัจจุบันเช่นนี้ การเชื่อมโยงคีย์เริ่มต้นคืออะไร
12 files  minibuffer 

1
เปิดไฟล์ในหน้าต่างใหม่หลังจากค้นหาด้วย helm
ตามที่เขียนไว้ในA Package ในลีกของตนเอง: Helmมีวิธีการ ค้นหาไฟล์โดยใช้ Helm ตัดสินใจหลังจากค้นหาว่าเปิดในหน้าต่างเดียวกันหรืออื่น ๆ คำถามของฉันคือ: อย่างไร

1
เปิดไฟล์ขนาดใหญ่หรือไม่
ฉันต้องการเปิดเฉพาะส่วนหัวของไฟล์ขนาดใหญ่ ฉันรู้ว่าคุณสามารถใช้คำสั่ง shell ( M-! RET head file RET) แต่ฉันhelmทำไม่สำเร็จมันเปิดในหน้าต่างแยกต่างหากและบัฟเฟอร์มีชื่อที่ไม่เป็น*Shell Command Output*ทางการ ฉันจะเปิดไฟล์ขนาดใหญ่ด้วยhead(หรือคล้ายกัน) ได้อย่างไร
12 files 


2
Elisp: จะแยกข้อมูลที่ละเอียดอ่อนออกจากไฟล์ init อย่างไร (เช่นข้อมูลรับรองการเข้าสู่ระบบ)
ฉันต้องการกำหนดฟังก์ชั่นเข้าสู่ระบบในสคริปต์ init ของฉัน แต่ฉันไม่ต้องการ hardcode หนังสือรับรองการเข้าสู่ระบบของฉัน ฉันคิดว่าวิธีแก้ปัญหาที่ดีคือการให้สคริปต์ init อ่านในข้อมูลรับรองการเข้าสู่ระบบจากไฟล์ในเครื่องและบันทึกค่าเหล่านี้เป็นตัวแปร ด้วยวิธีนี้ฉันสามารถแยกไฟล์ออกจากดัชนี git ของฉันซึ่งทำให้ข้อมูลรับรองการเข้าสู่ระบบของฉันปลอดภัย มีคำแนะนำใด ๆ เกี่ยวกับวิธีการนี้หรือวิธีตั้งค่าอาร์กิวเมนต์เป็นค่าที่กำหนดไว้ในไฟล์หรือไม่? ตัวอย่างเช่นฉันต้องการใช้สิ่งต่อไปนี้ในinit.el: ;; Set up our login variables here: (setq file-location "~/.emacs.d/.login") (setq erc-username "default-name") (setq erc-password "default-password") (setq erc-url "default-url") (setq erc-port "default-port") (defun read-lines (filePath) "Return a list of lines of a file at …

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