如何在emacs中用多行代替匹配.
示例: - 用吠叫动物替换"狗"
如下所示
The Dog
Run Code Online (Sandbox Code Playgroud)
同
The Barking
animal
Run Code Online (Sandbox Code Playgroud)
我在命令replace-regexp中尝试了\n,emacs会抛出错误,说明在替换文本中无效使用`\'
以下伪代码的elisp代码
if "the emacs version is less than 23.1.x"
do
something
else
something-else
Run Code Online (Sandbox Code Playgroud)
写成
(if (or (< emacs-major-version 23)
(and (= emacs-major-version 23)
(<= emacs-minor-version 1)))
(setq color-theme-is-global t)
(color-theme-initialize))
Run Code Online (Sandbox Code Playgroud)
如何优化上面的代码,以便"emacs-major-version"不会被引用两次.
我想查看工作目录和索引的状态,而不是未跟踪的文件。
git-status文档http://www.kernel.org/pub/software/scm/git/docs/git-status.html告诉您-u开关将过滤未跟踪的文件。
但是下面的命令
git status -u no
Run Code Online (Sandbox Code Playgroud)
过滤未跟踪的文件,还过滤工作树和索引中跟踪文件的修改。
我想收集并创建一个包含标题的块,标题只在标题中有"ID"属性.
即要过滤的标题看起来像
* Headline
:PROPERTIES:
:ID: my-id
:END:
Run Code Online (Sandbox Code Playgroud)
我使用以下代码配置自定义议程命令,该命令不起作用
(setq org-agenda-custom-commands
'(("c" "MY Agenda"
((tags "ID")))))
Run Code Online (Sandbox Code Playgroud)
我已经阅读了组织手册http://orgmode.org/manual/Matching-tags-and-properties.html#Matching-tags-and-properties,但仍然无法弄清楚如何去做.
要在缓冲区中获取没有扩展名的绝对文件路径,例如/home/alice/hello.cpp- > /home/alice/hello,以下代码可以正常工作
(concat (file-name-directory (buffer-file-name)) (file-name-base (buffer-file-name)))
Run Code Online (Sandbox Code Playgroud)
但它看起来太冗长了.是否有一种优雅的方式或直接的功能?
在GNU-Make手册中,如何制作读取制作文件 https://www.gnu.org/software/make/manual/make.html#Reading-Makefiles部分说
GNU make在两个不同的阶段完成它的工作.在第一阶段,它读取所有makefile,包括makefile等,并内化所有变量及其值,隐式和显式规则,并构建所有目标及其先决条件的依赖关系图.在第二阶段,make使用这些内部结构来确定需要重建的目标,并调用执行此操作所需的规则.
我无法清楚地了解这两个阶段的差异.可能正在寻找一个有助于理解的例子.是否有任何链接或教程阐明了第一阶段和第二阶段到底发生了什么.
以下集合包含10个元素
{10, 20, 21, 22, 23, 40, 50, 56, 90, 100}
Run Code Online (Sandbox Code Playgroud)
N = 10 O(log 10)= 1
如果必须搜索元素20,则必须执行4次比较操作(即)
1-comparision 10
2-comparision 23 (since mid value of 10 elements)
3-comparision 21 (mid)
4-comparision 20
Run Code Online (Sandbox Code Playgroud)
二进制搜索如何具有O(log N)的复杂性?
如何在erlang程序中杀死erlang程序?exit/1命令与c语言标准库退出调用的行为不同.
下面的代码会导致无限递归。如果不使用Dumper进行打印,则它会按预期工作。为什么Dumper会导致递归?
use Data::Dumper;
my %hash1 = (
'key1' => ['val1']
);
while (my ($key, $value) = each %hash1) {
print Dumper \%hash1;
}
Run Code Online (Sandbox Code Playgroud) 如何在不使用中间变量的情况下临时将哈希转换为数组
例如,在下面的代码中,“@arr”变量是一个存储转换后的哈希值的数组。
my %scientists = (
"Newton" => "Isaac",
"Einstein" => "Albert",
"Darwin" => "Charles",
);
my @arr = %scientists;
print $_ . " " foreach @arr; # "Newton Isaac Darwin Charles Einstein Albert"
Run Code Online (Sandbox Code Playgroud)
我并不是想在这里完成任何具体的事情。只是想知道是否可以将哈希转换为没有中间变量的数组
print ref(\@arr); # print array
Run Code Online (Sandbox Code Playgroud)
同样,是否有一个东西可以代替“”,以便以下是可能的
print ref(<syntax>%scientists%<sytax>) # should print array.
Run Code Online (Sandbox Code Playgroud)