- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在为 python 脚本编写一个 comint 模式。
脚本可以启动:
/usr/bin/python3.3 tool-name arg0
我正在使用 comint-mode,因为此调用会在运行前在提示中询问一些信息。
如果我创建:
(defun create-app ()
"create application by using python tool"
(interactive)
(progn
(setq default-directory "/path/to/tool")
(setq buffer (get-buffer-create "*buffer_name*"))
(apply 'make-comint-in-buffer "tool" buffer "/usr/bin/python3.3" nil nil)
)
)
一切正常,python 已启动,但如果我写:
(defun create-app ()
"create application by using python tool"
(interactive)
(progn
(setq default-directory "/path/to/tool")
(setq buffer (get-buffer-create "*buffer_name*"))
(apply 'make-comint-in-buffer "tool" buffer "/usr/bin/python3.3 tool-name arg0" nil nil)
)
)
缓冲区告诉我它不能执行程序“/usr/bin/python3.3 tool-name arg0”
有没有人知道(有或没有 comint)我如何启动这个 python 进程并让脚本在启动前询问一些信息?
最佳答案
make-comint-in-buffer
的文档字符串(C-hfmake-comint-in-buffer
RET) 声明如下
(make-comint-in-buffer NAME BUFFER PROGRAM &optional STARTFILE &restSWITCHES)Make a Comint process NAME in BUFFER, running PROGRAM.If BUFFER is nil, it defaults to NAME surrounded by `*'s.If there is a running process in BUFFER, it is not restarted.PROGRAM should be one of the following:- a string, denoting an executable program to create via `start-file-process'- a cons pair of the form (HOST . SERVICE), denoting a TCP connection to be opened via `open-network-stream'- nil, denoting a newly-allocated pty....If PROGRAM is a string, any more args are arguments to PROGRAM.
So the correct way to use the function is to have the only name of the program as a string and pass the arguments to be passed to the program, as additional arguments to make-comint-in-buffer
as follows
(apply 'make-comint-in-buffer "tool" buffer "/usr/bin/python3.3" nil "tool-name" "arg0")
关于python - 在 emacs 的 comint-mode 中使用参数执行 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22561151/
我通常尝试使用如下命令启动 CLI(可能未正确定义它): (make-comint-in-buffer "PUTTY" nil "./plink.exe" nil "dbserver") (make-
我正在尝试使用 comint erlang-shell 打开一个后台缓冲区,一旦启动,就在 emacs 中运行一个函数调用(使用 distel 将其二进制文件发送到 erlang 节点)。 即: ..
有时在 comint 模式下,点位于缓冲区中的任意位置,我错误地按了 Return。这会将文本发送到底层进程,这可能非常危险。此文本通常包含很多行,并且无论是否偶然,其中一行可能是有效命令。 有什么方
我要解决的具体问题是 向正在运行的 telnet 发送命令 session 使用 message 回显命令的结果 但一般问题是将命令发送到下级(comint)进程 并等待输出返回并出现新的提示,然后返
我经常同时打开几个 comint 缓冲区,例如,我将向数据库打开一个 SQLi 缓冲区,并在不同的地方打开一组 shell 缓冲区。有时,我无缘无故地检测到,所有这些缓冲区开始共享一个公共(publi
在 Ubuntu Lucid 上使用 Emacs 23.2.1,任何基于 Comint 的模式都会偶尔插入换行符以获得更大的输出(参见下面的示例 Shell 和 SQL 模式输出)。我在 SQL 模式
我在 Emacs 中有一个 shell,但是 major-mode 只给我 comint-mode。 有没有办法确定哪种类型的外壳? 也许调用了什么 Emacs 函数来启动它? 或者至少解释器的可执行
我目前将编译绑定(bind)到 C-x c。我知道我可以使用 C-u C-x c 在 comint 模式下运行编译,但我更愿意直接将它绑定(bind)到 C-x c。如果不从 compile.el 复
我有一个简单的 mpi 程序来演示我的问题: #include #include int main(int argc, char *argv[]) { int rank, csize;
我想在 comint 启动的进程完成后读取缓冲区的输出。 (comint-redirect-send-command-to-process command-strin
例如,我有以下命令来运行我的项目: java -cp "lib/*:src:resources" clojure.main -m etl-proxy.proxy.core 所以我尝试使用以下命令创建
我在 Emacs 24 上安装了 js-comint 模式。现在当我尝试执行 run-js 时,它会抛出以下错误: Exception in thread "main" java.lang.NoCla
我想在切换到我通常运行命令的缓冲区后,通过搜索来导航历史记录,而不是在缓冲区末尾一次导航一个命令(例如 C-p )。 基本上,我想在缓冲区末尾“反向搜索”命令历史记录,而不是搜索缓冲区。 有人编写了可
编辑 Bash 脚本我想为变量分配文件名。 例如输入文件=foo.txt 与标准。 settings 如果不先在“=”后插入一个空格,我就无法完成文件名。 有什么解决办法吗? 最佳答案 首先,自 Em
我正在为 python 脚本编写一个 comint 模式。 脚本可以启动: /usr/bin/python3.3 tool-name arg0 我正在使用 comint-mode,因为此调用会在运行前
我使用 Emacs 24.2。我已经从 MELPA 安装了 js-comint 和 js-mode ,执行了 run-js,现在在 REPL 而不是 > 符号我有这个乱码: ^[[1G> ^[[0K^
我是一名优秀的程序员,十分优秀!