Questions tagged «zsh»

Zsh是一种设计用于交互式使用的外壳程序,尽管它也是一种功能强大的脚本语言。

2
使用符号的目录别名
我正在寻找为我的工作目录设置一个别名,它可以随着我改变上下文而改变,我试图找到一些足够短的东西作为替代品~。如果别名可以有一个字符名称,我会被粉红色。喜欢cd %什么?分配别名%似乎不起作用。 我已经尝试寻找变量名称的要求,但我找不到任何。我不知道这是不是内置的shell,我不可能是第一个想要这样做的人。 我正在使用zsh,但是我标记了bash,以防两个shell中都有可能。
1 linux  bash  zsh  alias 

1
在vi模式下使用zsh但使用箭头键搜索历史记录
当为zsh(bindkey -v)启用vi模式时,无论如何都要按常规模式搜索历史记录,即键入几个字母并按向上/向下箭头键? 我发现这比按下逃跑要快得多,然后?输入几个字母,按回车然后n用来滚动火柴。 此外,似乎vi模式搜索匹配命令中的任何位置,我只想在命令的开头匹配,就像使用箭头键进行常规搜索一样。
1 zsh 

1
如何在ZSH中使用'tuned'提示解决这个问题?
我的ZSH配置中有一个调整后的提示。主要特点是,此提示符为红色,以便我可以轻松区分程序的输出。我的提示定义如下: PROMPT=$'\e[0;31m%n@%m:%~> \e[0m' 这种方法大部分工作都很好,但有时我的光标会切换到制表符完成时的另一个位置,并且屏幕上会留下一些字符并将命令行放大。这有点烦人,但如果有人知道解决方案,我会很感激。

1
Zsh别名复杂字符串引用转义
我试图alias gsl="..."为以下命令定义一个别名(),但无法正确获取转义引号。 git stash list | awk -F: '{ print "\n\n\n\n"; print $0; print "\n\n"; system("git stash show -p " $1); }' 有关如何逃避引用以正确定义别名的任何提示?
1 zsh 


1
我可以在窗口的垂直中间显示终端提示吗?
我刚刚意识到在使用终端时我会喋喋不休,因为提示始终位于终端窗口的底部,这是垂直最大化的。 我希望提示位于窗口的垂直中间(或者在我眼睛所指的位置附近)。 您可以争辩说我可以调整窗口大小并实现这一目标,但有时我喜欢垂直空间(例如,跑步时ls -la)。所以,理想情况下,我可以在某个点和窗口底部之间切换提示的位置。 (我在MacOS下使用iTer和zsh,但我对这种做法的不可知/通用方式感兴趣)
1 terminal  zsh  iterm2  iterm 

1
没有菜单的ZSH glob扩展
我正在尝试以这样的方式配置zshell: $ ls *<TAB> # results in ls a b c d e f g <cursor> 其中“a,b,..,g”是与通配符匹配的文件。相反,它给了我默认的完成菜单。 但是,如果没有要扩展的glob,我会想要完成菜单。所以 $ ls * | <tab> 会给我命令完成菜单。 我看到这个工作。但我真的不知道如何在zshell中配置globbing。任何人?
1 shell  zsh 

0
在Zsh中别名二进制文件
我有以下二进制文件: ~/wren/wren 这是脚本语言的解释器。像这样运行: cd ~/wren ./wren myscript.wren 将执行脚本。我想创建一个别名,使我可以使用一个命令从任何地方运行解释器,就像运行Ruby解释器一样。这也将需要别名来保留传递给解释器的命令行参数。我尝试添加以下内容: alias wren='~/wren/wren "$@"' 到.zshenv,但是输入wren myscript.wren会产生“找不到命令”错误。

0
轮回完成?
如何防止ZSH通过匹配补全循环,而是仅在列表中显示剩余可能性的列表? 在较新的OS安装中,按Tab时我开始了解ZSH循环行为。我不喜欢它,而是更喜欢给我看比赛清单。我的较旧的操作系统安装有此设置,因此我猜测是由于较新版本的Zsh中的某些默认设置所致。我曾尝试在Google上进行搜索,并比较了我的环境变量(env输出-如果有帮助,可以在其中添加它们,但会很长),但我只是想不出正确的设置。 这是我的环境信息: 在以下系统上可以正常工作(每次按Tab时列表匹配) zsh 4.3.12 (i386-apple-darwin11.2.0),Darwin macbookair 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64 i386 MacBookAir4,2 Darwin zsh 5.1.1 (i686-ubuntu-linux-gnu), Linux nuc2017 4.4.0-96-generic #119-Ubuntu SMP Tue Sep 12 14:58:51 UTC 2017 i686 i686 i686 GNU/Linux 全新Ubuntu安装 zsh 5.0.8 (x86_64-apple-darwin15.0), Darwin Sridhars-Mac-mini.local 15.3.0 Darwin …

1
zsh的蒸汽机车
在zsh中,当我键入时ls,它会如我期望的那样列出目录中的文件。但是,当我输入slzsh 时,我不会询问是否要让蒸汽机车在屏幕上滚动。它只是自动更正为ls,而无法实际运行程序sl。这很烦人,我如何告诉zsh sl真的意味着sl? 值得注意的是,zsh不会询问我是否要对其进行纠正(与通常的自动纠正不同),它似乎是一个别名。但是,我不知道别名在哪里。(哪个文件)
1 zsh  oh-my-zsh 

1
在zsh中的选项卡完成时运行命令
我正在尝试建立一个zsh函数,它将带我回到顶层git目录,并带有一个可选参数来相对于该目录移动。我目前有这个可行的: alias gitdir='git rev-parse --show-toplevel' cdgit() { cd $(gitdir)/$1 } 问题是,制表符补全无法正常工作,它将在运行时从我所在的任何目录自动完成cdgit,但我希望从中完成$(gitdir)。如果我在运行之前输入以下行cdgit,则补全将正常运行(从$(gitdir)): compctl -W $(gitdir) -/ cdgit 但是,我不想每次键入cdgit仅获得制表符完成之前都键入该命令。有什么办法可以使我完成功能cdgit,以某种方式运行该命令,使我的完成正确吗?

1
nano 3.2总是在没有nls的情况下编译
我正在运行macOS 10.14和zsh。 我注意到默认安装了nano 2.0并缺少一些功能。所以,我尝试编译并安装最新版本(3.2)。 这工作正常,除了两件事: - 它总是在没有nls的情况下编译。 - 它总是在没有utf-8支持的情况下编译。 nano --version GNU nano, version 3.2 (C) 1999-2011, 2013-2018 Free Software Foundation, Inc. (C) 2014-2018 the contributors to nano Email: nano@nano-editor.org Web: https://nano-editor.org/ Compiled options: --disable-libmagic --disable-nls --disable-utf8 在配置期间,它确实发出了关于utf-8的警告,所以它确实有意义,即禁用utf-8支持。 configure: WARNING: *** Insufficient UTF-8 support was detected in your curses and/or …

1
tmux在Ubuntu 14.04上以[exited]退出
这台机器是我用来连接的VPS。 我安装时问题就开始了 Prezto tmux -v 也退出 [exited] sudo tmux 也不起作用 我没有 .tmux.conf 我似乎有一个 tmux-server.log 和a tmux-client.log 在我的主目录中, 要旨 更新 : tmux new /bin/bash 作品。 tmux new /bin/zsh 没有。 更新2 : /bin/zsh 以段错误退出, which zsh 给我 /usr/bin/zsh。 tmux new /usr/bin/zsh 也不起作用。 输出来自 strace tmux rt_sigaction(SIGINT, {SIG_IGN, [], SA_RESTORER|SA_RESTART, 0x7f00bf5e4d40}, NULL, 8) …
ubuntu  zsh  tmux 

2
PHPStorm内置终端 - 如何退格单词?
我喜欢PHPStorm的内置终端,我所有的zsh别名都能正常工作,非常方便。 它唯一缺少的是能够通过单词退格(就像我可以在OSX的默认终端中使用 option + backspace 键)。 有没有办法在PHPStorm的内置终端中获得该功能?

4
Zsh在我的Git回购中超级慢
我的Zsh在我的某个Git回购中超级慢。当我谷歌“zsh git slow”时,我得到了一堆关于Git的结果 自动完成 缓慢,但自动完成不一定是我的问题;它的 一切 。 我尝试删除所有插件,奇怪的是,当我打开一个新shell时,根本没有做任何事情。 Zsh仍会在我的Git回购中使用Git。 我发现了这个片段 这一页 : function git_prompt_info() { ref=$(git symbolic-ref HEAD 2> /dev/null) || return echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$ZSH_THEME_GIT_PROMPT_SUFFIX" } 这让一切都快了,但它也给了我一个看起来像这样的提示: ➜ snip git:(master 注意缺少右括号。那有些蹩脚。而且整个事情看起来像是一个我不应该做的黑客。 还有这个看起来很有希望的SU问题,但接受答案的链接已经死了。 如何让我的Zsh不要在Git回购中变慢?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.