Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
meishi125478
ohmyzsh
提交
d8ed8f66
O
ohmyzsh
项目概览
meishi125478
/
ohmyzsh
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
ohmyzsh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d8ed8f66
编写于
3月 13, 2014
作者:
R
Robby Russell
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #650 from tristan0x/emacs
Emacs
上级
9272b0b0
a01b1fef
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
68 addition
and
0 deletion
+68
-0
plugins/emacs/emacs.plugin.zsh
plugins/emacs/emacs.plugin.zsh
+56
-0
plugins/emacs/emacsclient.sh
plugins/emacs/emacsclient.sh
+12
-0
未找到文件。
plugins/emacs/emacs.plugin.zsh
0 → 100644
浏览文件 @
d8ed8f66
# Emacs 23 daemon capability is a killing feature.
# One emacs process handles all your frames whether
# you use a frame opened in a terminal via a ssh connection or X frames
# opened on the same host.
# Benefits are multiple
# - You don't have the cost of starting Emacs all the time anymore
# - Opening a file is as fast as Emacs does not have anything else to do.
# - You can share opened buffered across opened frames.
# - Configuration changes made at runtime are applied to all frames.
if
"
$ZSH
/tools/require_tool.sh"
emacs 23 2>/dev/null
;
then
export
EMACS_PLUGIN_LAUNCHER
=
"
$ZSH
/plugins/emacs/emacsclient.sh"
# set EDITOR if not already defined.
export
EDITOR
=
"
${
EDITOR
:-${
EMACS_PLUGIN_LAUNCHER
}}
"
alias
emacs
=
"
$EMACS_PLUGIN_LAUNCHER
--no-wait"
alias
e
=
emacs
# same than M-x eval but from outside Emacs.
alias
eeval
=
"
$EMACS_PLUGIN_LAUNCHER
--eval"
# create a new X frame
alias
eframe
=
'emacsclient --alternate-editor "" --create-frame'
# to code all night long
alias
emasc
=
emacs
alias
emcas
=
emacs
# Write to standard output the path to the file
# opened in the current buffer.
function
efile
{
local
cmd
=
"(buffer-file-name (window-buffer))"
"
$EMACS_PLUGIN_LAUNCHER
"
--eval
"
$cmd
"
|
tr
-d
\"
}
# Write to standard output the directory of the file
# opened in the the current buffer
function
ecd
{
local
cmd
=
"(let ((buf-name (buffer-file-name (window-buffer))))
(if buf-name (file-name-directory buf-name)))"
local dir
=
"
$(
$EMACS_PLUGIN_LAUNCHER
--eval
$cmd
|
tr
-d
\"
)
"
if
[
-n
"
$dir
"
]
;
then
echo
"
$dir
"
else
echo
"can not deduce current buffer filename."
>
/dev/stderr
return
1
fi
}
fi
## Local Variables:
## mode: sh
## End:
plugins/emacs/emacsclient.sh
0 → 100755
浏览文件 @
d8ed8f66
#!/bin/sh
# get list of available X windows.
x
=
`
emacsclient
--alternate-editor
''
--eval
'(x-display-list)'
2>/dev/null
`
if
[
-z
"
$x
"
]
;
then
# Create one if there is no X window yet.
emacsclient
--alternate-editor
""
--create-frame
"
$@
"
else
# prevent creating another X frame if there is at least one present.
emacsclient
--alternate-editor
""
"
$@
"
fi
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录