Code Editors 四大编辑器攻略

前(心)言(经)

emmmm,要说什么来着

代码折叠

快速缩进、带缩进的复制

多行复制、编辑

  • A or M means Alt
  • C means Ctrl(^)
  • Cmd just means Command(for Mac)
  • S means Shift
  • O means Option(for Mac)
  • Up means ..
  • Righy means ..
  • Down means ..
  • Left means ..
  • SPC means space

我一开始所想问的像多行选中、编辑等,可以去参考 vim 中某功能(之所以某,是因为只知其存在,不知其具体),或者 emacs 有相关插件

接着记录缩紧/align:, + f(format) + l(clojure align)

其次,Lisp 语系不同于 js、py,很多时候需要剪切、复制、移位的内容都在括号之间

很多键,如 SPC + k + s 等,需 SPC + k 去试

需要牢记 y 复制,d 删除,a 囊括

y + a + {( 或 y + a + })
d + a + {( 或 d + a + })— 复制或删除 {} 之间内容

同理

y + a + [( 或 y + a + ])
d + a + [( 或 d + a + ])— 复制或删除 [] 之间内容

y + a + i
d + a + i

y + i + i
d + i + i

还有很多去看看 vim

c+x 4/5 f — Open new file in a new gui window or by splitting the window

多行复制、编辑

需要首先对多行内容选中,执行后可通过 cmd / alt + 左右箭头控制方向

  • Sublime - cmd + shift + l
  • VSCode — alt + shift + i

Emacs & Spacemacs

Emacs 内部开 repl 注意不要跟外部命令行里冲突,之前内部开不了的症结应该就是外部开着 repl

  • C-p -> Up 方向键:向上
  • C-f -> Forward(right) 方向键:向前(向右)
  • C-n -> Down 方向键:向下
  • C-b -> Backaward(left) 方向键:向后(向左)
  • C-a ->
  • M-a ->
  • C-s -> Search 搜索🔍(关键字)

  • C-x + 1 -> Delete all but one window
  • C-x + b -> Switch to buffer 切换 Buffer
  • C-x + s -> Save some buffers 保存 buffers
  • C-x + u -> Undo 撤销(还有好几种方式)
  • C-x + C-b -> List buffers
  • C-x + C-c -> Quit Emacs 退出
  • C-x + C-f -> Find file 打开文件
  • C-x + C-s -> Save the file 保存文件(或者修改)

  • z + a -> 折叠 code fold
  • SPC + b + p/n 切换 previous-buffer/next-buffer

Vim

常用

  • 0 跳转到行首
  • $ 跳转到行尾

VSCode

  • Cmd-S-d -> Copy the line(s) 复制行
  • Cmd-k -> Delete line(s) 删除行

Moving j/k over folds opens up the folds

Try setting vim.foldfix to true. This is a hack; it works fine, but there are side effects (see issue#22276).

Sublime Text3

  • Cmd-S-d -> Copy the line(s) 复制行
  • C-S-k -> Delete line(s) 删除行
  • Cmd-Del -> Delete line(s) 删除行
  • Cmd-C-方向键(上、下) -> 上下移动
  • 按住 Alt,从光标位置开始上或下选择若干行 — 相当于 vim 中 C-v