คำถามติดแท็ก package-development

1
เป็นวิธีที่ดีที่สุดในการใช้แพคเกจท้องถิ่นใน Spacemacs อะไร
ฉันเป็นผู้พัฒนาสำหรับแพ็คเกจ (ycmd) ที่ใช้โดย spacemacs และฉันต้องการลองใช้ spacemac ด้วยเช่นกัน ฉันต้องการ spacemacs ที่จะใช้ "รุ่นพัฒนา" ของแพ็คเกจของฉันนั่นคือรุ่นที่ฉันแฮ็กในเครื่อง อะไรคือวิธีที่ดีที่สุดในการบอก spacemacs ให้ใช้แพ็คเกจรุ่นนั้นแทนที่จะเป็นแบบจาก melpa ตอนนี้ฉันกำลังใช้การ:load-pathโต้แย้งuse-packageแต่ดูเหมือนว่าจะขัดกับเมล็ดเล็กน้อย Spacemacs ให้ฉันระบุไดเรกทอรีโหลดสำหรับแพ็คเกจเฉพาะในการกำหนดค่าเลเยอร์หรือไม่?

1
เครื่องมือที่ดีสำหรับการพัฒนาแพ็คเกจ Emacs คืออะไร? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา เรามีคำถามเกี่ยวกับเครื่องมือที่มีประโยชน์สำหรับการทดสอบโดยเฉพาะแต่สิ่งที่เกี่ยวกับการเขียนรหัสจริงหรือ แพ็คเกจใดที่คุณพบว่าช่วยให้การพัฒนาของคุณเร็วขึ้น? ตัวช่วยใดที่คุณใช้เพื่อนำทางและเข้าใจโครงการของคุณอย่างรวดเร็วและง่ายดาย?

6
ฉันจะแก้ไขแพ็คเกจ Emacs ได้อย่างไร
ฉันต้องการแก้ไขแพ็คเกจทดสอบและหวังว่าจะส่งคำขอการดึงภายหลัง ฉันจะทำอย่างปลอดภัยและมีประสิทธิภาพได้อย่างไร คำถามอาจรู้สึกกว้างเกินไปฉันจะยอมรับคำตอบที่ครอบคลุมประเด็นต่อไปนี้: ฉันคาดว่าจะติดตั้งแยกสาขาของแพ็คเกจและสามารถสลับระหว่างมันและสาขาที่มั่นคงในราชประสงค์ด้วย recompilation ดำเนินการโดยอัตโนมัติเมื่อจำเป็น แต่package.elดูเหมือนจะไม่นำเสนอวิธีที่ตรงไปตรงมา คำตอบนี้บน emacs-SE บอกเราว่า“ถ้ามีการติดตั้งหลายสำเนาของแพคเกจแล้วคนแรกที่จะถูกโหลด” ดังนั้นฉันเดาหนึ่งได้ด้วยตนเองยุ่งกับload-pathแต่นี้ไม่ได้รู้สึกแข็งแกร่ง วิธีมาตรฐานในการเลือกแพ็คเกจรุ่นใดรุ่นหนึ่งในบรรดาแพ็คเกจที่ติดตั้งคืออะไร? แม้ว่าฉันจะสามารถเปิดเผยหลายสาขาไปยัง Emacs ได้ แต่สำหรับการปรับแต่งที่สำคัญฉันต้องตรวจสอบให้แน่ใจว่าสาขาที่ไม่ได้อัปเดตนั้น“ ไม่ได้โหลด” และผลข้างเคียงที่แยกได้ ไม่unload-featureจัดการนี้ถูกต้องหรือบางทีมันอาจจะมีนิสัยที่ทดสอบของแพคเกจหลาย versioned ทุกคนควรรู้เกี่ยวกับอะไร? ฉันจะติดตั้งและทดสอบเวอร์ชันในเครื่องได้อย่างไร คำตอบนั้นขึ้นอยู่กับว่าแพ็กเกจนั้นง่าย (= หนึ่งไฟล์) หรือหลายไฟล์ EmacsWiki พูดเกี่ยวกับแพ็คเกจที่หลากหลาย:“ MELPA สร้างแพ็คเกจสำหรับคุณ ” ฉันสงสัยว่าฉันต้อง (หรือควร) พูดคุยกับ MELPA ทุกครั้งที่ฉันเปลี่ยนdefunแบบฟอร์มในแพ็คเกจที่หลากหลาย แต่คำถามยังคงอยู่ อย่างน้อยฉันต้องบอกตัวจัดการแพคเกจเกี่ยวกับเวอร์ชันในเครื่องและถ้าเป็นเช่นนั้นฉันจะทำอย่างไร ฉันควรกำหนดชื่ออะไรให้กับแพ็คเกจในท้องถิ่น? สมมติว่าฉันต้องการทำงานกับคุณสมบัติหรือข้อบกพร่องหลายอย่างพร้อมกันซึ่งหมายความว่ามีหลายสาขา Emacs จะไม่อนุญาตให้ตั้งชื่อเวอร์ชันในลักษณะที่เป็นคำอธิบาย (ตามแนวของ20170117.666-somebugorfeature) ฉันเดาว่าฉันสามารถเปลี่ยนชื่อแพ็กเกจตัวเองคำต่อท้ายสาขา แต่อีกครั้งเช่นload-pathแฮ็คด้วยตนเองในไตรมาสที่ 1 นี่เป็นแฮ็คที่น่าเกลียดดังนั้นฉันจะไม่ลองกับสิ่งที่ฉันตั้งใจจะส่งอัปสตรีมเว้นแต่ว่าเป็นการปฏิบัติที่ยอมรับอย่างกว้างขวาง . คำถามที่อาจไร้เดียงสาเนื่องจากฉันไม่เคยเขียนแพทช์ไม่ได้ใช้กับ git …

4
วิธีโหลดแพคเกจที่ติดตั้งไว้เพียงชุดย่อย
ฉันพบข้อผิดพลาดที่เกี่ยวข้องกับการโต้ตอบระหว่างแพ็คเกจต่างๆ ในการรายงานข้อผิดพลาดฉันต้องจัดทำสูตรอาหารที่สามารถทำซ้ำได้ซึ่งแสดงถึงปัญหา ต้องมีการโหลดแพ็คเกจที่เหมาะสม แต่ไม่มีอะไรอื่นจาก init ของฉันและไม่มีแพ็คเกจอื่น วิธีที่ดีที่สุดในการทำเช่นนี้คืออะไร? UPDATE เพื่อชี้แจงฉันคุ้นเคยกับแนวคิดของการกลั่นกรองผ่าน. emacs ของฉันในการค้นหาแบบไบนารีเพื่อระบุรหัสที่ทำให้เกิดปัญหา ในสถานการณ์นี้ฉันรู้ว่าแพคเกจใดที่ทำให้เกิดปัญหาอยู่แล้ว สิ่งที่ฉันไม่รู้คือวิธีการใช้package-ระบบเพื่อโหลดแพ็กเกจเพียงไม่กี่อย่าง (package-initialize)จะโหลดแพ็คเกจ แต่รวมถึงทุกอย่างใน.emacs.d/elpaไดเรกทอรีของฉัน package-load-listช่วยให้ผมระบุรุ่นเฉพาะของแพคเกจที่จะโหลดหรือแพคเกจโดยเฉพาะอย่างยิ่งอย่างชัดเจนยกเว้น ฉันต้องการย้อนกลับ - วิธีจัดหา Emacs ด้วยรายชื่อแพ็คเกจที่จะรวมโดยไม่ต้องโหลดแพ็คเกจอื่น ๆ ในระบบ elpa / package

2
วิธีการที่เหมาะสมในการให้โปรแกรมภายนอกพร้อมกับแพคเกจ?
ฉันรักษาชุดของ elisp จำนวนมาก (เช่น codesearch, emacs-ycmd, traad) ที่จะได้รับประโยชน์จากความสามารถในการติดตั้งโปรแกรมภายนอกที่พวกเขาใช้ประหยัดเวลาและความพยายามสำหรับผู้ใช้บางคน ตัวอย่างเช่นด้วย codesearch.el มันจะเป็นการดีที่จะสามารถดาวน์โหลดรวบรวมและติดตั้งเครื่องมือ codesearch (เขียนในไปไม่ใช่ elisp) สำหรับผู้ใช้ สิ่งนี้จะลบสิ่งกีดขวางอย่างน้อยหนึ่งข้อสำหรับการใช้แพ็คเกจ มี "แนวปฏิบัติที่ดีที่สุด" สำหรับการทำเช่นนี้หรือไม่? ตัวอย่างเช่นฉันควรวางโปรแกรมภายนอกไว้ที่ไหน หากคุณไม่มีคำแนะนำโดยตรงคุณสามารถส่งต่อฉันไปยังแพ็คเกจใด ๆ ที่ทำสิ่งนี้ได้ (และโดยพื้นฐานแล้วมันทำได้ดีหรือไม่)

1
การจัดการกับ“ คำเตือน: การกำหนดให้กับตัวแปรอิสระ” เมื่อไลบรารีบางอย่างอาจหายไปจากการออกแบบ
การรวบรวมไบต์ของโหมดของฉัน: (defun dict-setup-expansions () "Add `dict-mode' specific expansions." (set (make-local-variable 'er/try-expand-list) (list #'dict-mark-article))) ให้คำเตือน: Warning: assignment to free variable `er/try-expand-list' นี่เป็นสถานการณ์ปกติเพราะer/try-expand-listมีการกำหนดไว้ในภายนอก ห้องสมุดexpand-regionซึ่งอยู่ที่http://elpa.gnu.org โหมดของฉันลงทะเบียนส่วนขยายไปยังexpand-regionไลบรารี แต่มันก็โอเคที่จะใช้โหมดของฉันโดยไม่มีexpand-regionโหมด ฉันคิดว่าวิธีที่เหมาะสมในการจัดการกับคำเตือนคือการเพิ่มการประกาศ: (defvar er/try-expand-list) defvar เอกสารพูดว่า: The `defvar' form also declares the variable as "special", so that it is always dynamically bound even if `lexical-binding' is t. …

1
จะสื่อสารการเปลี่ยนแปลงแพ็คเกจกับผู้ใช้ที่เก็บได้อย่างไร?
ฉันมีแพ็คเกจสำหรับโต้ตอบกับกระบวนการ GRASS GIS ซึ่งมีอยู่ใน MELPA อัตราการพัฒนาและจำนวนผู้ใช้ค่อนข้างต่ำดังนั้นไม่จำเป็นต้องมีรายชื่อผู้รับจดหมายหรือการสื่อสารที่เป็นทางการกับผู้ใช้ของฉัน อย่างไรก็ตามฉันเพิ่งแนะนำการเปลี่ยนแปลงบางอย่างเกี่ยวกับตัวเลือกการกำหนดค่าที่จะต้องได้รับความสนใจจากผู้ใช้ของฉัน - ฉันจะสื่อสารสิ่งนี้กับพวกเขาได้อย่างไรเพราะส่วนใหญ่พวกเขาทั้งหมดจะเห็นว่าเป็นแพ็คเกจที่อัพเดทจาก MELPA มีวิธีส่งข้อความไปยังผู้ใช้หรือไม่ว่าพวกเขาจะเห็นครั้งแรกที่พวกเขาเรียกใช้รหัสหลังจากมีการเปลี่ยนแปลงบางอย่างหรือไม่ แนวปฏิบัติที่ดีที่สุดในเรื่องนี้คืออะไร?

3
จะสร้างและเปิดใช้งาน autoloads สำหรับแพ็คเกจท้องถิ่นได้อย่างไร
เป็นที่ชัดเจนว่าแพคเกจท้องถิ่น / กำหนดเอง / ส่วนบุคคลไม่ควรมีการเปิดตัวอย่างเป็นทางการและมันจะโง่หากได้รับประโยชน์จากการสนับสนุนการจัดการแพคเกจในตัว ฉันสงสัยว่าจะสร้างและเปิดใช้งาน autoloads สำหรับแพ็คเกจท้องถิ่นได้อย่างไร ซึ่งคล้ายกับpackage.elแพคเกจที่ติดตั้งจาก ELPA เพื่อหลีกเลี่ยงการสร้างล้อใหม่มีวิธีที่จะ "เสแสร้ง" ที่ไดเรกทอรีท้องถิ่นบางรายการ (ที่มีไดเรกทอรีย่อยแต่ละแห่งซึ่งเป็นแพคเกจท้องถิ่น / กำหนดเอง / ส่วนตัว) เป็น ELPA หรือไม่ ฉันยังเปิดให้el-getหากสถานการณ์ดังกล่าวสามารถได้รับการสนับสนุนผ่านเช่นสูตรอาหารที่กำหนดเอง ฉันแน่ใจว่างานนั้นค่อนข้างธรรมดาและใครก็ตามที่ใช้ Emac ในระดับสูงก็มาถึงจุดนั้นไม่ช้าก็เร็ว ใครช่วยแบ่งปันประสบการณ์ของพวกเขาในสาขานี้?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.