默认的Emacs C++模式(cc-mode)仍然无法识别许多C++ 11功能.一个恼人的问题是它对用作函数参数的lambda函数应用了太多的缩进:
std::vector<int> ar(4);
std::generate_n(std::begin(ar), 4, [] {
static int g_i;
return g_i++;
});
std::for_each(std::begin(ar), std::end(ar), [](int i) {
std::cout << " " << i;
});
bool b = std::is_sorted(std::begin(ar), std::end(ar), [&](int l, int r) {
return l<r;
});
std::cout << " " << b << "\n";
Run Code Online (Sandbox Code Playgroud)
理想情况下,人们会更喜欢:
std::vector<int> ar(4);
std::generate_n(std::begin(ar), 4, [] {
static int g_i;
return g_i++;
});
std::for_each(std::begin(ar), std::end(ar), [](int i) {
std::cout << " " << i;
});
bool b = std::is_sorted(std::begin(ar), std::end(ar), …Run Code Online (Sandbox Code Playgroud) 我正在维护一个拥有SQL Server 2005后端的经典ASP网站.对于一小段新功能,我编写了一个存储过程来进行插入.这是数据库中唯一的用户存储过程.
当我尝试从代码中调用存储过程时,我收到以下错误:
Microsoft OLE DB Provider for SQL Server error '80040e14' Could not find stored procedure 'InsertGroup'. /newGroup.asp, line 84
数据库使用SQL Server身份验证.当我使用与连接字符串中相同的用户/ pw连接到Visual Studio中的数据库服务器时,存储过程不可见,但所有表都是.
用户具有datareader和datawriter角色以及对存储过程的显式执行权限.
我错过了什么?
更新:道歉,服务器管理员误以为它是2000服务器,当它实际上是2005服务器(在Windows Server 2003 x64上运行).
当使用npm时M-x term,它会生成这样的颜色消息(即使使用-q):

来自的信息 what-cursor-position
There are text properties here:
font-lock-face (:foreground "red3" :background "black" :inverse-video nil)
fontified t
Run Code Online (Sandbox Code Playgroud)
它很难看,也很难在其他主题中阅读,是否有可能在飞行中改变颜色?例如,更改匹配的文本的颜色npm http,npm ERR!
谢谢.
我刚刚安装了Sql Server Compact Edition.令我惊讶的是,我们不能在sql server CE中使用存储过程.我在Sql Server CE中是否有任何替代的存储过程.我非常着迷存储过程,我无法想到没有存储过程的应用程序.
请帮助,提前致谢.
编辑:我可以使用托管存储过程.
我为什么要和lambda一起使用#'?它通常是这样写的,所以我猜它是好的形式.但这些线条似乎与我相同:
> (mapcar #'(lambda (x) (+ x 1)) '(1 2 3))
(2 3 4)
> (mapcar (lambda (x) (+ x 1)) '(1 2 3))
(2 3 4)
Run Code Online (Sandbox Code Playgroud)
有人关心这个差异的开始吗?
请帮我在命令行中执行MySQL存储过程,其中过程包含条件语句.
如果我运行emacs --daemon(在.xinitrc或之后)然后emacsclient -c,新创建的帧具有黑色光标颜色,无论是colortheme还是任何其他设置.更确切地说,在我输入任何内容之前,光标颜色是白色(或其他颜色),但是第一个按键时它变为黑色并且无法通过改变set-cursor-color.默认和我的自定义colorthemes都是黑色,所以它使编辑非常不舒服.
如果我跑emacs,M-x server-start而不是emacs --daemon那么这个问题不会出现.但是这种方式我需要保留一个emacs"主"帧而不是偶然杀死它,这似乎不是一个很好的解决方案.
我有以下阻止,.emacs.d/init.el但它没有帮助:
(set-cursor-color "red")
(setq initial-frame-alist '((cursor-color . "red")))
(setq default-frame-alist '((cursor-color . "red")))
(add-hook 'window-setup-hook '(lambda () (set-cursor-color "red")))
(add-hook 'after-make-frame-functions '(lambda (f) (with-selected-frame f (set-cursor-color "red"))))
Run Code Online (Sandbox Code Playgroud)
如果我跑,M-x describe-face RET cursor我得到:
(...)
Defined in `faces.el'.
Family: unspecified
Foundry: unspecified
Width: unspecified
Height: unspecified
Weight: unspecified
Slant: unspecified
Foreground: unspecified
Background: black
Underline: unspecified
Overline: unspecified
Strike-through: …Run Code Online (Sandbox Code Playgroud) 我一直在使用Magit,并且在提交时,它曾经简单地拆分窗口并允许我在同一个emacs会话中提交,但我似乎已将此行为更改为以下内容:
现在,当我提交我的分阶段更改时,一个新的emacs客户端启动,需要一段时间才能加载,最后让我写下我的提交消息.然后我运行Cc Cc来提交.当我关闭此客户端时,提交会完成.
如何强制magit在同一个emacs会话中运行提交而不打开一个全新的客户端?

我正在尝试在Windows上配置Emacs,并且我想在我的配置中插入一个"use-package"包,但是当我按下Emacs上执行时显示消息"符号的函数定义无效:使用 - 包"
(setq inhibit-startup-message t)
(require 'package)
(setq package-enable-at-startup nil)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/"))
(package-initialize)
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
Run Code Online (Sandbox Code Playgroud)
有时我收到错误消息"use-package不可用".
Debugger entered--Lisp error: (void-function package-installed-p)
(package-installed-p (quote use-package))
(if (package-installed-p (quote use-package)) nil (package-refresh-contents) (package-install (quote use-package)))
eval((if (package-installed-p (quote use-package)) nil (package-refresh-contents) (package-install (quote use-package))) nil)
elisp--eval-last-sexp(nil)
eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
call-interactively(eval-last-sexp nil nil)
command-execute(eval-last-sexp)
Run Code Online (Sandbox Code Playgroud) 在OS X 10.5 Emacs 23.2上,在dired-mode中,如果我尝试dired-sort-toggle-or-edit使用前缀参数进行排序,--sort=extension或者-X得到:
insert-directory: Listing directory failed but `access-file' worked
Run Code Online (Sandbox Code Playgroud)
并且dired缓冲区变空.我尝试过设置
(setq dired-use-ls-dired nil)
Run Code Online (Sandbox Code Playgroud)
但这没有效果.dired-sort-toggle-or-edit并通过扩展排序似乎在我的Ubuntu框上工作正常.有人知道发生了什么事吗?
emacs ×6
emacs-faces ×2
sql-server ×2
c++ ×1
c++11 ×1
command-line ×1
database ×1
debugging ×1
dired ×1
emacsclient ×1
git ×1
indentation ×1
lambda ×1
lisp ×1
macos ×1
magit ×1
mysql ×1
package ×1
quote ×1