所以我想,添加谷歌走模块到我的.emacs文件,这样,当我使用emacs编辑我.去文件,它会的话,适当的压痕和亮点.香港专业教育学院网上看了看,似乎我需要将下面的代码片段添加到我的.emacs文件(我找不到!)
;; go mode
(setq load-path (cons "/usr/local/go/misc/emacs" load-path))
(require 'go-mode-load)
Run Code Online (Sandbox Code Playgroud)
我已经把去模式,load.el去-mode.el在我.emacs.d /目录下,我相信我仍然需要找到.emacs文件中添加上面列出我运行OS X,如果这有助于代码.有人可以帮我搞定这个工作谢谢!
我想在EMACS中使用Ctrl+ Tab供我自己使用,但是Emacs组织模式已经有了这个限制.我如何使用自己的绑定而不是org-mode绑定.
在我的.emacs文件中,我使用:
(global-set-key (kbd "<C-tab>") 'switch-view )
Run Code Online (Sandbox Code Playgroud)
除了org-mode之外,它可以在任何地方使用
我在一个新的linux主机上重新安装了emacs 24.2.50,并基于magnars emacs配置启动了一个新的dotEmacs 配置.由于我在之前的工作流程中使用了CEDET取得了一些成功,因此我开始配置它.但是,每当我加载C++源文件时,都会有一些奇怪的行为.
[本部分已解决]
正如预期的那样,语义解析所有包含的文件(并在初始设置期间解析由semantic-add-system-include变量指定的所有文件),但它会打印出如下所示的错误消息:
WARNING: semantic-find-file-noselect called for /usr/include/c++/4.7/vector while in set-auto-mode for /usr/include/c++/4.7/vector. You should call the responsible function into 'mode-local-init-hook'.
在上面的示例中,为STL向量打印错误,但是为我正在访问的文件和任何后续包含的文件所包含的每个文件打印相应的错误消息.因此,完成需要相当长的时间,不幸的是,重复该过程的任何类型我打开一个新的缓冲区.
[此问题也解决了]
此外,当我将点放在非c基本类型(即不是int,double,float等)之上而不是打印类型的定义时,看起来解析并不真正起作用. modeline一条错误消息
Idle Service Error semantic-idle-local-symbol-highlight-idle-function: "#<buffer DEPFETResolutionAnalysis.cc> - Wrong type argument: stringp, (((0) \"IndexMap\"))"
Idle Service Error semantic-idle-summary-idle-function: "#<buffer DEPFETResolutionAnalysis.cc> - Wrong type argument: stringp, ((\"fXBetween\" 0 nil nil))"
其中DEPFETResolutionAnalysis.cc是我正在编辑的文件和缓冲区,而IndexMap和fXBetween是我正在编辑的文件所包含的文件中定义的类型/我正在编辑的文件所包含的某个文件.
我没有测试CEDET /语义的任何进一步的功能,因为问题非常烦人.我的cedet配置可以在这里找到.
编辑:在Alex Ott的帮助下,我解决了第一个问题.这是由于我可怕的cedet初始化.请参阅他的第一个答案,了解配置CEDET的正确方法!
仍然存在问题Idle Service Error(当启用时global-semantic-idle-local-symbol-highlight-mode,永久发生,不仅在检查点上类型的定义时). …
我正在使用emacs + auctex满足我所有的TeXing需求,我对工作流程非常满意.但是,有一件事困扰着我.当我编译一个文件(可能包含多个文件)并且缺少参考时,auctex会打印出这个恼人的消息
LaTeX Warning: Reference `fig:MyMissingLabel' on page 42 undefined on input line 37.
Run Code Online (Sandbox Code Playgroud)
就是这样.没有跳转到缺失参考的快捷方式,nada!
我知道我可以启用警告调试,但是,如果文档产生其他警告我不想调试¹,这不太合适.
我想要一个defun,将点循环到缺失引用的位置.因此我没有在网上找到任何东西,也许你们其中一个人可以帮忙吗?
提前致谢!
elemakil
[1]例如,某些软件包在未加载版本号或其他内容时会报告警告.我不想调试这个.我想纠正我的推荐!
我已经重新安装了我的emacs,现在我正在使用emacs v24.3.50与auto-completev1.4和popup.elv0.5.不幸的是,自动完成的弹出"菜单"有点破碎(参见随附的屏幕截图).
不同的项目没有沿着公共垂直线对齐[忽略来自CEDET的黑色叠加层,可能意味着放置在弹出菜单旁边的右侧; 禁用CEDET时问题仍然存在,因此无关紧要).

从我所能看出的情况看,线之间"转换"的程度取决于字符串长度的差异.此外,当使用箭头键选择不同的建议时,每当标记向上/向下移动一行时,线的水平移位稍微改变(〜几个像素).
我已经上传了我的一部分.emacs.d/init.el被用于配置自动完成这里.
对于如何解决这个问题,有任何的建议吗?
我的一个程序抛出一个std::out_of_range.我知道原因,我正在访问带索引的向量-1.我不知道的是代码中的向量名称(变量名称)和位置.我的程序生成的错误消息如下所示:
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
zsh: abort (core dumped) ./main.x config.cfg
Run Code Online (Sandbox Code Playgroud)
而其他人的代码(他也使用g++)并在问题C++访问向量中发布的错误消息如下所示:
Error for vec.at(i).setVec(tmp);
Error is: terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Run Code Online (Sandbox Code Playgroud)
即他被告知变量的名称.我的问题是:
有没有办法告诉g++/ gcc给我扩展信息?甚至可能包括行号(不知道这是否可能,但嘿,一个人可以梦想;)).
只是为了funsies我跑我的程序中gdb使用catch thrown的选项(我要补充,我有接近零的经验,在使用实际的调试器),它并没有告诉我任何新的东西都不好,事实上,它并没有告诉我的错误是由于std::out_of_range例外.
顺便说一句,我的编译器标志(用于调试)是:
CFLAGS = --exceptions -I$(ROOTSYS)/include --std=c++11 -Wall -g -O0 -fno-inline -fno-eliminate-unused-debug-types
Run Code Online (Sandbox Code Playgroud) 我wgrep经常使用重构,一般来说它表现得很好.但是,我希望可以解决一些小麻烦:
执行rgrep搜索后,更改wgrep并执行rgrep缓冲区中的更改wgrep将打开要更改的所有文件并执行修改.但是,这样做时,文件在emacs中正常打开,因此它们将经历正常的模式加载,如果此操作涉及被解析的大型源文件,则可能需要相当长的时间.
是否可以修改wgrep,使其以最基本的模式(我猜基本模式
正常模式)打开文件?
执行更改后,wgrep不会关闭任何新打开的缓冲区.
是否可以更改wgrep,使其自动关闭在执行阶段打开的任何缓冲区(即在wgrep程序启动之前未打开的缓冲区).
最后,元问题:这是一个问题是要发布到wgrep开发人员的问题跟踪器还是一个正确的StackOverflow问题?
出于教育目的,我想写自己c++11的类型列表.裸列表看起来像这样:
template <typename ... Ts> struct type_list;
template <typename T, typename ... Ts>
struct type_list<T, Ts ...> {
typedef T Head;
typedef type_list<Ts ...> Tail;
};
template <typename T> struct type_list<T> {
typedef T Head;
typedef null_type Tail;
};
Run Code Online (Sandbox Code Playgroud)
我创建了一个调用front提取第一个元素的函数:
template <typename T> struct front;
template <typename TypeList>
struct front {
typedef typename TypeList::Head type;
};
Run Code Online (Sandbox Code Playgroud)
哪个按预期工作,即此代码
typedef type_list<int> lst;
typedef type_list<float,int> lst2;
typedef type_list<double,float,int> lst3;
typedef type_list<char,double,float,int> lst4;
std::cout << "front(lst1): " << typeid( front<lst>::type …Run Code Online (Sandbox Code Playgroud) c++ templates metaprogramming template-meta-programming c++11
我很难理解如何BigInt正确使用.在我看来,应该使用BigInt何时Int64或Int128不够,并且显然BigInt使用任意精度算术(我不知道).
假设我想计算一些大数的阶乘,例如30.我不知道需要存储多少位factorial(30)但两者都要
test = Int128
test = factorial(30)
Run Code Online (Sandbox Code Playgroud)
和
test = BigInt
test = factorial(30)
Run Code Online (Sandbox Code Playgroud)
产生-8764578968847253504明显不正确的产品.
根据Julia lang文档,似乎通常的数学运算符是为这种类型定义的(BigInt),结果被提升为a BigInt.因此,我没有看到我做错了什么,我显然误解了一些事情.希望你们中的一些人可能对我有一个解释:)
PS:如果有话要说,我正在运行64位版本的Windows 7
我已经安装并配置了它,mu并mu4e按照手册中的说明进行了解释(emacs 24.3.1的最新版本)。我的mu4e配置包含:
(setq mu4e-maildir "~/Maildir/mail_user_de")
(setq mu4e-drafts-folder "/Drafts")
(setq mu4e-sent-folder "/Sent")
(setq mu4e-trash-folder "/Trash")
Run Code Online (Sandbox Code Playgroud)
这些文件夹存在,每个包含三个子文件夹:cur,new和tmp。当我启动mu4e时说:
[mu4e]在商店中以4023条消息开始了mu4e
但是,当我进入INBOX文件夹时,没有列出邮件。另一方面,当我输入最近7天的书签时,将列出最近7天的所有电子邮件。
我的假设是,这mu4e不适用于从emacs 外部下载的电子邮件,因为
offlineimap和mu index)时mu4e,电子邮件中的邮件会正确分类到INBOXINBOX直到将它们标记为已在之外mu4e阅读。如果发生这种情况,mu4e它们将不会出现在中INBOX,否则它们将突然出现在(标记为已读)中INBOX。 显然我不喜欢这样。我希望所有邮件(无论是从内部下载mu4e还是直接在终端中下载)都显示在中INBOX。这是错误还是功能(我希望可以将其禁用)?