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

9
การใช้ Emacs เป็น C / C ++ IDE ที่มีคุณสมบัติครบถ้วน
ฉันลองและใช้งานมานานกว่าหนึ่งปีเพื่อใช้ Emacs เป็น C / C ++ IDE ฉันประสบความสำเร็จเพียงเล็กน้อยเพียงเล็กน้อยเท่านั้น แต่ได้พบกับกำแพงอิฐสองสามแห่งระหว่างทาง ขณะนี้ฉันกำลังพยายามใช้ CEDET แต่ฉันมีเวลาค่อนข้างเข้าใจวิธีการใช้อย่างมีประสิทธิภาพ คุณสมบัติที่ฉันกำลังมองหาใน IDE มีดังนี้: การจัดการซอฟต์แวร์ "โครงการ" ฉันต้องการให้ IDE มีความรู้สึกของไฟล์ทั้งหมดที่ทำขึ้นในโครงการปัจจุบันของฉันเพื่อให้ฉันสามารถทำหน้าที่เช่นการค้นหาและแทนที่ภายในโครงการของฉัน (มันจะดีถ้าฉันสามารถทำได้โดยไม่ทำให้ต้นไม้ต้นกำเนิดของฉันมีไฟล์สนับสนุนมากมายทำไมฉันต้องมีไฟล์โครงการรวมศูนย์มากกว่าหนึ่งต่อโครงการ?) ความสามารถในการสร้างโครงการปัจจุบันจากภายใน IDE โดยไม่คำนึงถึงบัฟเฟอร์ที่ฉันกำลังเยี่ยมชม ฉันต้องสามารถผูกคีย์ที่จะสร้างโครงการปัจจุบัน การรายงานข้อผิดพลาด ฉันไม่ต้องการอ่านผลลัพธ์มากกว่า 500 บรรทัดเพื่อหาข้อผิดพลาดที่เครื่องมือสร้างรายงาน ข้อผิดพลาดจะแสดงในบัฟเฟอร์ของตัวเองโดยมีหนึ่งบรรทัดต่อข้อผิดพลาด การรับรู้สัญลักษณ์ภายในโครงการและที่ที่มีการกำหนดไว้ ฉันต้องการข้ามไปยังคำจำกัดความของสัญลักษณ์ว่าอยู่ในไฟล์โครงการของฉันหรือในระบบมีไฟล์อยู่ด้วย การแก้ไขข้อบกพร่องทางสายตา ฉันต้องการมีรายการเฝ้าดูของตัวแปรเฉพาะที่อัปเดตโดยอัตโนมัติเมื่อฉันดูรหัส ฉันต้องการที่จะสามารถตั้งค่าเบรกพอยต์ในรหัสดูบรรทัดของรหัสที่จะดำเนินการต่อไป ฉันรู้ว่าคุณสมบัติเหล่านี้มีอยู่เพราะฉันเคยทำงานในแต่ละครั้งหรือใช้ EDE, Semantic, GDB เป็นต้นปัญหาคือฉันไม่เคยมีคุณสมบัติเหล่านี้ทั้งหมดในเวลาเดียวกัน เพราะโดยปกติแล้วแต่ละชิ้นจะต้องมีการกำหนดค่าด้วยตัวเองและโดยปกติแล้วมันจะทำงานมากเกินกว่าจะหาวิธีกำหนดค่าทั้งหมดในครั้งเดียวและทำให้มันทำงานร่วมกันได้ มีโซลูชั่นอะไรบ้างสำหรับการเปลี่ยน Emacs ให้เป็น C / C ++ IDE …

6
วิธีรับการเติมข้อความอัตโนมัติอัจฉริยะใน C ++ ได้อย่างไร
Emacs ไม่สามารถแข่งขันกับ IDE อื่นได้หากไม่มีฟังก์ชั่นเติมภาพอัตโนมัติ เติมข้อความอัตโนมัติทำให้ฉันเป็นโปรแกรมเมอร์ที่มีประสิทธิภาพมากขึ้น ฉันรู้จักส่วนขยาย Auto Complete Modeแต่ไม่สามารถใช้กับ C ++ ได้ ฉันจะได้รับการเติมข้อความอัตโนมัติที่ชาญฉลาดและมีประสิทธิภาพสำหรับ C ++ ได้อย่างไร แต่เดิมคำถามนี้ถูกถามโดยMalabarbaเกี่ยวกับข้อเสนอ Area 51: จะทำให้การเติมข้อมูลอัตโนมัติอัจฉริยะได้อย่างไรใน C ++
43 c++  completion 

2
แสดงจุดเริ่มต้นของขอบเขตเมื่ออยู่นอกหน้าจอ
ฉันต้องการแสดงส่วนเปิดของขอบเขตเมื่อสิ่งนี้ออกจากหน้าจอ ตัวอย่าง: namespace a { ... --------------------- <- display frame ... | }* | * when cursor is here display "namespace a" in the minibuffer --------------------- or on screen สิ่งนี้สามารถทำงานได้กับภาษาการเขียนโปรแกรมจำนวนมาก แต่ฉันคิดว่า C ++ เป็นหลัก เพื่อชี้แจงเพิ่มเติมอีกเล็กน้อยและสำหรับผู้ที่รู้จัก VS ฉันต้องการคุณลักษณะที่คล้ายกันกับสิ่งที่มีอยู่ใน Visual Studio เช่นการวางเคอร์เซอร์ที่ส่วนท้ายของขอบเขตแสดงจุดเริ่มต้นของขอบเขตที่ด้านบนของบัฟเฟอร์การแก้ไข สถานที่นี้มีอยู่แล้วบ้างไหม?

2
วิธีรับไวยากรณ์ที่เน้นความหมายบน emacs สำหรับรหัส C / C ++
ฉันยังใหม่กับ emacs และการเขียนโปรแกรมโดยทั่วไปดังนั้นโปรดอดทนกับฉัน ฉันพยายามใช้ emacs เป็น C / C ++ IDE ของฉันและฉันสังเกตเห็นว่าในโหมด CC ตัวแปร / ฟังก์ชั่นดูเหมือนจะถูกเน้นเฉพาะในระหว่างการประกาศ คำถามของฉันคือ เป็นไปได้หรือไม่ที่จะเน้นตัวแปรและฟังก์ชั่นในไฟล์ cpp ทั้งหมด ถ้าเป็นไปได้สิ่งที่ต้องเพิ่มในไฟล์. emacs ขอบคุณ

1
ตัวแปรที่ประกาศสี
ฉันกำลังมองหาวิธีง่ายๆในการทำให้ emacs จดจำตัวแปรที่ประกาศไว้ในฟังก์ชันเดียวใน C / C ++ โดย "ง่าย" ฉันหมายถึงไม่มีแพ็คเกจภายนอกเพียงแค่มีบรรทัด elisp ในไฟล์กำหนดค่า Emacs การตั้งค่าเริ่มต้นของฉันชื่อตัวแปรสีเหลืองในการประกาศ แต่ให้พวกเขาสีขาวในการใช้งาน char toto; // 'char' is green, 'toto' is yellow toto = 42; // 'toto' is white ฉันต้องการทำให้ทุก "toto" ของฟังก์ชั่น / ขอบเขตเดียวกันเป็นสีเหลืองเช่นกัน ฉันได้ดูคำถามนี้แล้วแต่ฉันต้องการสิ่งที่เรียบง่ายกว่า ฉันพยายามทำบางสิ่งด้วยโหมดล็อคตัวอักษรแต่ฉันไม่สามารถทำสิ่งที่ปรับให้เข้ากับชื่อตัวแปรได้ ฉันมีแนวคิดสำหรับชื่อสมาชิกคลาส C ++ (โดยใช้รูปแบบชื่อ) ดังนั้นฉันจึงต้องการตัวแปรโลคัลตรงกับที่นี่

2
ปิดใช้งานคำเตือนเฉพาะใน flycheck (โดยเฉพาะ“ #pragma หนึ่งครั้งในไฟล์หลัก”)
ฉันใช้ flycheck เพื่อการพัฒนา C ++ และรับคำเตือนต่อไปนี้: #pragma once in main file ในส่วนหัวทั้งหมดรวมอยู่ในไฟล์หลัก ค้นหาเว็บฉันได้รับความประทับใจว่ามันเกี่ยวข้องกับวิธี gcc และเสียงดังกราว ฉันต้องการกำจัดคำเตือนนี้ มีอะไรที่ฉันพอจะทำได้บ้าง?
11 c++  flycheck 

3
ฉันจะรับ C / C ++ แบบคำนึงถึงบริบทกับ บริษัท ได้อย่างไร
Semantic ดูเหมือนว่าจะสามารถทำเช่นนี้ได้ แต่ฉันไม่สามารถทำงานได้ตามที่คาดหวัง ตัวอย่างเช่นถ้าฉัน#include "Type.h"และประกาศการType tใช้semantic-complete-analyze-inlineเมื่อจุดอยู่หลังจากt.ให้ฉันข้อผิดพลาดอย่างสม่ำเสมอ ไม่พบประเภทสำหรับ `ประเภท t ' แทนที่จะให้สมาชิกทุกคนในที่สาธารณะ (หรือเหมาะสม) แก่tฉัน ฉันจะรับผลลัพธ์ที่ต้องการได้อย่างไร โดยอุดมคติแล้วฉันจะใช้ความหมายใดก็ได้ที่ความหมายอาจให้เป็นแบ็กเอนด์สำหรับ บริษัท

1
ตัวทำดัชนี C ++ ที่ดีที่สุด?
ฉันเพิ่งเปลี่ยนจากEclipse CDTเป็นSpacemacs ที่มีเลเยอร์ C ++เป็นสภาพแวดล้อมการพัฒนาของฉัน จนถึงตอนนี้ ... สุดยอดมาก! แต่หนึ่งในสิ่งที่ฉันพลาดเกี่ยวกับ Eclipse เป็นของดัชนี ตอนนี้ฉันใช้GNU Globalกับเลเยอร์gtags ปัญหาของ gtags คือมันเป็นระบบการแท็กไม่ใช่ตัวทำดัชนี ตัวอย่าง: การค้นหาการอ้างอิงสำหรับฟังก์ชั่นที่เรียกว่าsetในคลาสFieldจะส่งกลับการอ้างอิง 165 ครั้งใน codebase ของฉันซึ่งมีเพียงหนึ่งการอ้างอิงเท่านั้นField::set การค้นหาการอ้างอิงถึงsetใน CDT ส่งคืนผลลัพธ์ 1 รายการ มีวิธีแก้ปัญหาการจัดทำดัชนีที่ดีกว่าที่ฉันสามารถใช้ใน emacs หรือไม่? การค้นหาออนไลน์ฉันพบหน้านี้ซึ่งมีตัวทำดัชนี 3 รายการที่ดังกราว rtags sourceweb clang-indexer คำถาม: ข้อเสนอเหล่านี้จะให้ประสบการณ์การทำดัชนีที่ดีขึ้นหรือไม่ ข้อเสนอแนะใดที่จะใช้? มีทางเลือกที่ดีกว่าที่ไม่อยู่ในรายการหรือไม่? บันทึก: ฉันยังใช้clang-completeสำหรับการทำให้โค้ดเสร็จ แต่พบว่าช้ามาก ช้าอย่างไม่น่าเชื่อ ( ฉันไม่ใช่คนเดียวที่ได้สัมผัสสิ่งนี้ ) หากโซลูชันการจัดทำดัชนีใด ๆ ประสบปัญหาเดียวกันมันจะไม่ทำงาน
11 c++ 

2
มี yasnippet ผลิตความคิดเห็น doxygen prepopulated?
สำหรับฟังก์ชัน C ++ ต่อไปนี้: bool importantStuff(double a, double b); มันควรจะส่งออกตัวอย่างต่อไปนี้อาจไม่มีแท็ก: /** * <Insert description of importantStuff> * * @param a <Insert description of a> * @param b <Insert description of b> * @return <Insert description of the return value> */ ฉันมองไปรอบสุทธิ แต่ที่ใกล้เคียงที่สุดผมเคยไปที่คำตอบคือนี้คำถาม SO เก่าที่ตอบขึ้นอยู่กับโหมด doxymacs ไม่มีการบำรุงรักษา
10 yasnippet  c++ 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.