Emacs

คำถาม & คำตอบสำหรับผู้ใช้ขยายหรือพัฒนา Emacs

2
คอมไพล์ emacs ด้วย xwidget ภายใต้ OSX?
ฉันจะรวบรวม Emacs ด้วยxwidgetภายใต้ OSX ได้อย่างไร เมื่อฉันพยายามที่จะเรียกใช้ผมได้รับข้อผิดพลาด./configure --prefix=$HOME/emacs-xwidgets --with-x-toolkit=gtk3 --with-xwidgets configure: error: xwidgets requested but gtk3 not used.แต่ดูเหมือนว่าฉันมี gtk + 3.0 - sandric@sandric-mac ~/emacs> brew install gtk+3 Error: gtk+3-3.18.9 already installed To install this version, first `brew unlink gtk+3` ดูเหมือนว่าฉันไม่มีgtk3แพ็คเกจในpkg-config- sandric@sandric-mac ~> pkg-config --list-all libzmq libzmq - 0MQ c++ library gio-unix-2.0 …
12 osx 

1
เชื่อถือ. dir-locals.el
ฉันต้องการที่จะนำการตั้งค่าบางอย่างออกไปข้างนอกinit.elไฟล์ของฉัน.dir-locals.elคือต่อไปนี้: ((nil (let ((dirs '(".cask" "core" "packages" "modules" "snippets" "themes"))) (mapc #'(lambda (path) (add-to-list 'projectile-globally-ignored-directories path)) dirs)))) แต่ทุกครั้งที่ฉันพยายามเปิดไฟล์ใด ๆ ใน.emacs.dโฟลเดอร์ของฉันemacs จะถามฉันว่าจะใช้รหัสนี้หรือไม่ ฉันพยายามเงียบโดยการตั้งค่า vars เฉพาะไฟล์: ;; -*- enable-local-variables: t; enable-local-eval: t -*- และมันก็ไม่ได้ช่วยอะไรเลยในทางกลับกันก็เพิ่มข้อความอีกอันให้ไว้วางใจการตั้งค่าในท้องถิ่น ฉันจะทำให้มันเชื่อถือ.dir-locals.elรหัสของฉันได้อย่างไร

1
ที่“ แก้ไขบัฟเฟอร์จริงๆ”, emacs เรียกใช้ ediff-current-file โดยอัตโนมัติหรือไม่?
บริบท เมื่อ emacs ตรวจพบว่าไฟล์ถูกเปลี่ยนแปลงนอกบัฟเฟอร์การแก้ไข ตั้งข้อสังเกต emacs จะถาม: ชื่อไฟล์บางส่วนเปลี่ยนไปในดิสก์; แก้ไขบัฟเฟอร์จริงเหรอ? (y, n, r หรือ Ch) (บังเอิญบางครั้งมันเกิดขึ้นแม้ว่าจะไม่มีการเปลี่ยนแปลงจริงเช่นไฟล์ระยะไกลบนเซิร์ฟเวอร์ที่มีนาฬิกาลอย แต่คำถามนั้นน่าสนใจในทุกกรณี) อยาก emacs จะถาม: ชื่อไฟล์บางส่วนเปลี่ยนไปในดิสก์; แก้ไขบัฟเฟอร์จริงเหรอ? (y, n, r, d หรือ Ch) การกดdจะแสดงความแตกต่างระหว่างเวอร์ชันเช่นediff-current-fileที่อนุญาตให้เดินความแตกต่างแบบโต้ตอบ ข้อมูลเพิ่มเติม ซึ่งจะคล้ายกับสิ่งที่การจัดการแพ็คเกจ Debian ทำเมื่อตรวจพบว่าไฟล์ปรับแต่งที่ปรับแต่งในเครื่องได้รับการอัพเดตโดยแพ็คเกจที่เป็นเจ้าของเวอร์ชั่นใหม่กว่า สำหรับตัวอย่างดูไฟล์คอนฟิกูเรชัน / etc / default / grub เวอร์ชันใหม่พร้อมใช้งาน แต่เวอร์ชันที่ติดตั้งปัจจุบันถูกแก้ไขแบบโลคัล - Unix & Linux Stack Exchange ค้นหาก่อนถาม ฉันมักจะหาทางแก้ปัญหา (เช่นemacsclient …

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

4
แปลงโครงสร้างโหมดองค์กรเป็นแหล่งจุด
การสร้างกราฟอย่างรวดเร็วจากโครงสร้างที่มีลักษณะคล้ายต้นไม้จะมีประโยชน์มากเมื่อทำการบันทึกในโหมดองค์กรที่ต้องการการแบ่งปันและหรือการทำให้สวยงามสำหรับมนุษย์คนอื่น ๆ ฉันไม่สามารถหาวิธีอื่นนอกเหนือจากการสร้างบล็อก dot / graphviz แบบไดนามิกด้วยตนเอง การแปลจากแผนผังที่มีโครงสร้างเป็นกราฟกำกับง่ายควรตรงไปตรงมาพอสมควร ฉันกำลังมองหาวิธีง่ายๆในการสำรวจแผนผังองค์กรโหมด (ภูมิภาคที่เลือก) และแปลโครงสร้างต้นไม้ (และอาจเลือกข้อมูลจากเนื้อหาของโครงสร้าง) เป็นกราฟจุด ฉันไม่อาจเป็นคนแรกที่คิดเรื่องนี้ สิ่งนี้ได้รับการแก้ไขแล้วหรือยัง? อินพุต * la1 ** la2 *** la3 *** la4 ** la5 และบางทีตัวแปร org-to-dot-preamble digraph { rankdir=TB; splines=true; node [shape=box]; ผลลัพธ์จะดูเหมือนบล็อกไดนามิกโหมด org #+BEGIN_SRC dot :file out.png :cmdline -Kdot -Tpng (contents of org-to-dot-preamble) la1 -> la2 la1 …
12 org-mode 

3
เน้นข้อผิดพลาดปัจจุบันในหน้าต่าง * การรวบรวม *
เมื่อรันคำสั่งการคอมไพล์และข้ามไปที่ 'ข้อผิดพลาดถัดไป' emacs จะระบุบรรทัดของข้อผิดพลาดปัจจุบันโดยการวางสามเหลี่ยมสีดำเล็ก ๆ ชี้ไปทางขวาในขอบด้านซ้ายของบัฟเฟอร์การคอมไพล์ * นี่เป็นสิ่งที่ดี แต่ดวงตาเก่าของฉันต้องการตัวบ่งชี้ที่โดดเด่นยิ่งขึ้น เป้าหมายพื้นฐานที่นี่คือสามารถระบุด้วยสายตาว่า emacs บรรทัดใดที่ระบุว่าเป็นข้อผิดพลาดของคอมไพเลอร์ในปัจจุบัน วิธีแก้ปัญหาบางอย่างที่อยู่ในใจ: ใบหน้าที่แตกต่างกันสำหรับข้อผิดพลาดปัจจุบัน (ใหญ่กว่าตัวอย่าง) สีพื้นหลังที่แตกต่างกันสำหรับข้อผิดพลาดปัจจุบัน (บางอย่างเช่นโหมด hl-line) สามเหลี่ยมที่ใหญ่กว่า แต่ฉันก็เปิดรับความคิดอื่น ๆ ด้วย มีคนช่วยฉันได้ไหม

1
แทรก Org-id Link ที่จุดผ่านการเสร็จสิ้นเส้นทางของ Outline
ขณะนี้การแทรกลิงก์ org-id โหมดองค์กรภายในฉันไปที่ส่วนหัวหรือดึงขึ้นในมุมมองกำหนดการ (การทดสอบการทดสอบส่วนหัวของ RET), จัดเก็บลิงก์ด้วย Cl (org-store-link) กลับไปยังตำแหน่ง ฉันต้องการแทรกลิงค์จากนั้นใส่ลิงค์ด้วย Cc Cl (org-insert-link) ฉันต้องการแมปคีย์ที่ให้ฉันแทรกลิงค์ที่จุดปัจจุบันโดยใช้การเติมเต็มของแท็บที่คล้ายกับ org-refile (Cc Cw) แทน ผลลัพธ์ที่ตั้งใจไว้จะเป็นลิงค์ภายใน org-id ในรูปแบบ: [[id:d7534b2f-c221-4dea-8566-d5ce3e4e1b78][Example Link]] เมื่อมองผ่าน org-id.el ดูเหมือนว่า org-id-get-with-outline-path-complete ถูกออกแบบมาเพื่อจุดประสงค์นี้ ฉันเหนื่อย: (global-set-key "\C-ci" (lambda () (interactive) (org-id-get-with-outline-path-completion))) แต่มันไม่ทำงานตามที่ตั้งใจไว้ ฉันมีสิ่งต่อไปนี้ในไฟล์ init.el ของฉัน: ;; Use global IDs (require 'org-id) (setq org-id-link-to-org-use-id t) ;; Update …
12 org-mode 

1
โหมดองค์กร - การแยกวิเคราะห์ HTML ที่หลากหลายโดยตรงเมื่อวาง?
ขณะนี้สำหรับเครื่องมือการจดบันทึกเช่นEvernoteและQuiverฉันสามารถคัดลอกเนื้อหา HTML โดยตรงจากเบราว์เซอร์ที่ชื่นชอบแล้ววางลงในแอพโดยมีการจัดรูปแบบ + ลิงก์ทั้งหมดที่เก็บรักษาไว้ อย่างไรก็ตามในโหมดรหัสดูเหมือนว่าข้อมูลการจัดรูปแบบทั้งหมดจะหายไป ผมเคยเห็นใครบางคนแนะนำให้ใช้ewweww-orgในการเรียกดูเว็บและคัดลอกเนื้อหาผ่านทาง อย่างไรก็ตามนั่นน่าเบื่อจริงๆ (ฉันไม่คิดว่าจะมีผู้คนมากมายที่ท่องเว็บโดยใช้ewwแทนเบราว์เซอร์ที่ทันสมัยทุกวันนี้ฉันจะต้องเปิดลิงค์นั้นอีกครั้งewwและคัดลอกไม่พูดถึงบางครั้งewwไม่ได้ แสดงเนื้อหาได้ดี) เป็นไปได้ไหมที่จะให้Emacsแยกวิเคราะห์ HTML ที่คัดลอกโดยตรงเมื่อวาง? แม้ว่าจะไม่มีเครื่องมือที่มีอยู่สำหรับสิ่งนั้นมันเป็นไปได้ไหมที่จะสร้างมันขึ้นมา? นี่เป็นสิ่งเดียวที่ทำให้ฉันเปลี่ยนorgmodeจากเครื่องมือจดบันทึกอื่น ๆ ไม่ได้

1
ป้องกัน helm จากการพร้อมท์เพื่อสร้างบัฟเฟอร์ใหม่
หากคุณเยี่ยมชมไดเรกทอรีด้วยhelm-find-filesและพิมพ์ชื่อของไฟล์ที่ไม่มีอยู่ก่อนที่จะเปิดในบัฟเฟอร์ helm ใหม่จะแจ้งให้: File does not exist, create buffer? ฉันต้องการหางเสือเพียงสร้างบัฟเฟอร์โดยไม่ต้องแจ้ง ฉันไม่สามารถหาตัวเลือกให้ทำเช่นนี้ได้ฉันต้องการตัวแปรเหมือนido-create-new-bufferกัน
12 helm 

2
เป็นไปได้หรือไม่ที่จะ จำกัด มุมมองบันทึกของ magit เป็นเพียงการกระทำจากสาขาปัจจุบัน
ขณะนี้เมื่อฉันเรียกบันทึก magit ในพื้นที่ ("l l") มันใช้เวลาพอสมควร มันจะดีสำหรับบันทึกเพื่อ จำกัด ตัวเองไว้ที่ฐานผสานที่ใกล้ที่สุด (เช่น vs Origin / master) แต่ฉันไม่สามารถหาวิธีการทำเช่นนี้ได้
12 magit 

5
วิธีการนับตัวอักษรในบัฟเฟอร์รวมถึงช่องว่าง?
ฉันต้องดูว่าตัวละครมีข้อความเท่าไหร่ในขณะที่ฉันพิมพ์ ฉันพบหน้าของ Emacs Wiki: จำนวนคำและมีวิธีแก้ปัญหาที่ใกล้เคียงกับสิ่งที่ฉันต้องการ: ฉันใช้คำตอบที่สองจากหน้านี้ (แสดงจำนวนคำในโหมดบรรทัด) เพราะมันแสดงจำนวน ตัวละครเช่นกัน แต่มันไม่นับช่องว่าง มีวิธีแก้ไขปัญหาใดบ้างที่จะแสดงจำนวนตัวอักษรรวมถึงช่องว่างในโหมดบรรทัด เป็นการดีที่จะกำหนดจำนวนอักขระเป้าหมาย (แต่ไม่จำเป็น)
12 mode-line 

1
ส่งออก: คุณสมบัติ: บล็อกที่มีโหมดองค์กรหรือไม่
org-modeคู่มือบอกว่ามันเป็นไปได้ที่จะลิ้นชักคุณสมบัติการส่งออกแต่พยายามด้วย #+OPTIONS: d:t ไม่ส่งออก:PROPERTIES:บล็อกใด ๆอย่างที่เคยเป็น การอ่านบทลิ้นชักดูเหมือนว่ามันเป็นไปไม่ได้อีกต่อไปแล้วอย่างน้อยกับorg-modeเวอร์ชั่นล่าสุด: คุณสามารถเลือกชื่อของลิ้นชักที่ควรส่งออกด้วย org-export-with-drawers ในกรณีนั้นเนื้อหาลิ้นชักจะปรากฏในผลลัพธ์การส่งออก ลิ้นชักคุณสมบัติจะไม่ได้รับผลกระทบจากตัวแปรนี้และจะไม่ถูกส่งออก มีการปรับแต่งใด ๆ ที่จะได้รับการทำงานนั้นเช่นมีการ#+OPTIONS: d:tส่งออกทั้ง:PROPERTIES:บล็อกสั้น ๆ ด้วยตนเองเปลี่ยน.orgไฟล์ก่อนที่จะส่งออกเวลา?

1
ในโหมดคำสั่งฉันจะรันคำสั่ง emacs ปกติได้อย่างไร
เมื่อเริ่มโหมดคำศัพท์ Emacs จะมอบหมายการกดปุ่มทั้งหมดให้กับเครื่องที่คุณใช้งานอยู่ นั่นยอดเยี่ยมสำหรับจุดประสงค์ในการใช้งานร่วมกันได้ แต่ทิ้งการทำงานของ Emacs ไว้เบื้องหลัง ฉันจะกลับไปที่คุณสมบัติของ Emacs ได้อย่างไร (เช่นเพื่อเปลี่ยนบัฟเฟอร์)
12 term 

3
วิธีที่ง่ายที่สุดในการใช้ฟังก์ชันเช่น format-time-string คืออะไร
format-time-string ฟังก์ชั่นใช้เวลาสตริงและแทนที่ชุดของโครงสร้างพิเศษในสตริงที่ (ตัวอักษรนำหน้าโดย%) ที่มีข้อความบางอย่าง ฉันต้องการที่จะใช้ฟังก์ชั่นเช่นนั้นในฟังก์ชั่นของตัวเอง: ฉันมี alist '((?n . name) (?r . reputation))ระหว่างตัวอักษรและสัญลักษณ์เช่น: "My name is %n, and my rep is %r"ฟังก์ชั่นควรใช้สตริงเช่น ควรแทนที่%nและ%rด้วยค่าของตัวแปรnameและreputationและส่งคืนผลลัพธ์ ควรจัดการ%%เช่นเดียวกับformat-time-string(แทนที่ด้วย%) วิธีที่ง่ายที่สุดในการใช้ฟังก์ชั่นนี้คืออะไร? มีห้องสมุดหรือฟังก์ชั่นที่จะช่วยอำนวยความสะดวกนี้หรือไม่? การจัดการ%%อย่างถูกต้องเป็นสิ่งสำคัญ
12 elisp 

9
พิมพ์ได้อย่างรวดเร็วเมื่อควบคุม Alt และ Esc เข้าถึงยาก
ฉันใหม่มากสำหรับ Emacs และฉันกำลังพยายามสอนในตัว หลังจากผ่านพื้นฐานฉันพบว่ามันยากที่จะเข้าถึงCtrlและAltหรือEscแป้น ฉันพยายามพิมพ์เร็วขึ้น แต่เนื่องจากคำสั่งทั้งหมดต้องใช้แป้นเหล่านี้ฉันจึงไม่สามารถทำงานได้เร็ว ฉันค้นหาแล้ว แต่ดูเหมือนว่าไม่มีใครบ่นเรื่องกุญแจเหล่านี้ ฉันรู้แล้วว่าคุณสามารถสลับCtrlและCaps Lockปุ่มได้ แต่ฉันไม่ชอบเพราะฉันได้ยินมาว่าไม่แนะนำ ฉันจะทำให้พิมพ์คำสั่งง่ายขึ้นได้อย่างไร

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