我是一个Windows用户,通过WSL来使用Ubuntu的Bash。现在我需要编辑一些文件,但我真的很讨厌Vi。我只能忍受它吗,还是有一个更简单的替代方案?
我需要的功能是:
- 基于命令行
- 易于使用(键入和编辑应类似于Notepad)
- 简单的编辑功能就足够了
我会试着掌握Vim,但我现在需要快速编辑!
我是一个Windows用户,通过WSL来使用Ubuntu的Bash。现在我需要编辑一些文件,但我真的很讨厌Vi。我只能忍受它吗,还是有一个更简单的替代方案?
我需要的功能是:
我会试着掌握Vim,但我现在需要快速编辑!
vi
而浪费时间。我是一名软件开发者,也这样说。 但是,您应该学会如何退出 vi
,因为这是 2万名程序员中的一个问题。 此外,学习一些基本的附加/插入操作可能值得一学,因为在某些难缠的服务器上,您将找不到任何其他编辑器。
现在,您的问题的答案可能是 nano
。
如果您正在运行一些自动化构建脚本、使用 git 或运行其他命令,它们可能会在您不想使用它的情况下打开 vim
。 在继续之前,您可以通过运行以下命令来防止此情况:
export EDITOR=nano
vim
是有意义的。我的主要观点是 vim
没有得到适当的教学,人们过于关注“众多功能”部分,导致他们错误地认为它难以学习。事实并非如此,因为大部分时候,人们在 vim 中只需要完成其功能的 20% 或更少。我完全同意 R.M. 所说的话 - Sergiy Kolodyazhnyynano
对我和99%的用户来说已经足够了。 :) - Andrea Lazzarottoi
,然后输入单词(或词组),再按下 ESC
。新起一行:按下 ENTER
。退出:输入 :q
。现在你已经掌握了基础知识,可以逐渐掌握更强大的功能。只需学习几分钟,就可以使用 vim 做任何你在 nano 中能做的事情,还有一些额外的功能。之后,每次你掌握一个新技巧,它都会变得更加有用。过一段时间后,它甚至比 IDE 更有用。但在达到那个水平之前,你仍然可以正常使用它。 - Rayvi
的头几个月只是进行普通的文本编辑,然后按下Esc
,输入:q
或者:wq
,再按下回车键。如果你对一个普通的文本编辑器感到满意,在vi
的插入模式下就可以作为一个普通的编辑器使用,只要你的终端允许你选择文本和复制粘贴。然后,当你开始希望更快地完成某些操作时,你可以逐步学习相应的命令来实现。 - mtraceur这是一个观点问题。
初学者使用nano。
vim(“vi improved”)有一定的学习曲线,但它非常强大。请参阅vim初学者指南或任何其他vim指南或vim教程vimtutor
(包含在vim中)。
目前我强烈建议使用nano。
nano -B /path/to/file/to/edit
emacs
是替代vim
和nano
的另一种选择,而且也有许多优点。相比nano,emacs
更加复杂。你可以查看emacs之旅。
为了完整起见,使用vim + Zenburn等主题可能会非常有帮助。
-B
点个赞 :D - Ravexinavi/vim
。:) 它存在于每个*nix设备上。:) 基础并不难。 - fugitiveesc+3
,删除多行代码:ctrl+k
(实际上是剪切这些行,但如果之后不粘贴它们,则没有区别);-),粘贴行:ctrl+u
("u" 代表 "uncut"),搜索内容:ctrl+w
然后输入名称并按回车键,跳转到特定行号:ctrl+shift+w
,取消操作:ctrl+c
,保存:ctrl+o
,保存并退出:ctrl+x
,撤销:alt+U
,重做:alt+E
。 - aderchoxcurl -sL https://raw.githubusercontent.com/slap-editor/slap/master/install.sh | sh
Tilde
是您正在寻找的完美选择。
引用自Tilde的主页
Tilde是一个面向控制台/终端的文本编辑器,为那些习惯于Gnome、KDE和Windows等图形用户界面的人提供了直观的界面。例如,复制当前选择的快捷键是Control-C,粘贴先前复制的文本的快捷键是Control-V。另外一个例子,可以通过按Meta-F来访问文件菜单。
如果您习惯于像下面这样的键盘快捷键
Ctrl + C
复制,Ctrl + V
粘贴,Ctrl + A
全选,Ctrl + Z
撤销,Ctrl + Y
重做,Ctrl + F
查找,Ctrl + S
保存,xo
(exofrills)。sudo apt install python3-pip
sudo pip3 install exofrills
$ ex¬
Entering Ex mode. Type "visual" to go to Normal mode.
:
:¬
E749: empty buffer
:
:a¬
Hello World¬
.¬
:
:%p¬
Hello World
:
:1i¬
this text is inserted before line 1.¬
.¬
:
:w /tmp/filename¬
"/tmp/filename" [New] 2L, 49C written
:
:1d¬
:.s/Hello/Hello,/¬
Hello, World
:.s/$/!/¬
Hello, World!
s
代表正则表达式。了解正则表达式是很好的!:q¬
E37: No write since last change (add ! to override)
:p
Hello, World!
:.!tr a-z A-Z
:p
HELLO, WORLD!
!作为一个命令将行过滤到shell命令中。
最后:
:vi¬
for file in conf/*
do (echo "%s/foo.bar.com/www.foobar.com/" ; echo "wq") |ex $file ; done
这是Midnight Commander中被严重低估的内置编辑器。 安装:
sudo apt install mc
mcedit file-name
General
菜单来禁用令人讨厌的“持久选择”。~/.config/mc/mc.keymap
文件中的 [editor]
部分进行配置。该文件最初不存在,所以你可以从 /etc/mc/mc.keymap
复制一份。select-editor
来更新你的默认编辑器。micro
似乎非常适合你。它是一个类似于 vi
或 nano
的终端编辑器,但具有更加合理的按键绑定。例如,Ctrl+C
是复制,Ctrl+V
是粘贴,Ctrl+S
是保存,Ctrl+Q
是退出等等。它还内置了许多语言的语法高亮显示,并支持鼠标操作。
mcedit
(属于mc
)。如果我需要其他东西,通常意味着我不需要一个文本编辑器,而是需要一个文本处理器或者一个集成开发环境(IDE)。在野外有很多基于控制台的编辑器(如pico
、nano
、vi
、vim
、ed
、emacs
、joe
等等),但只有一个编辑器我根本不需要记忆 - 那就是mcedit
(顺便说一下,它是基于cooledit
的)。 - user260281ciw
、diw
、yiw
和几个移动命令,就能真正理解vim的用意。对于一些人来说,逐步学习可能有效,但在我的情况(以及其他很多经验案例)中,一周内深入学习效果更好,比起一步一步来,因为作为一个新手,每次从“笨拙”的编辑器切换回来时,我会诱惑自己去使用'jjjjjjjjjjjhhhhhh'。这就像以18个字符每分钟的速度学习摩尔斯电码(好习惯)与5个字符每分钟(坏习惯)之间的区别。 - SO_fix_the_vote_sorting_bug