码农必备技能总结

码农的必备技能练习记录:


墙裂安利通关网站:
git :https://learngitbranching.js.org/?demo
正则表达式:https://regexone.com/
mysql: https://sqlzoo,net

Typing

由于没有使用VPN无法访问 https://www.typingclub.com/ ,所以就找了一个同款的打字软件进行打字练习,英文打字速度还可以,但是中文还有很大的提升空间,后期会考虑双拼打中文,不然中文的每一个字打全拼太费时间了。

VSCODE

1 并列编辑(ctrl+\)

ctrl+\

可以最多并排打开多个编辑器,视屏幕大小选择打开多少个编辑器吧。

如果你已经打开一个编辑器,有多种方式可以在旁边打开另一个编辑器:

  • 使用 Ctrl+\命令来将编辑器拆分为两块
  • 在文件管理器中文件右键菜单中单击 Open to the Side
  • 点击下图的多多页标志。

2 自动保存

设置

ctrl+,

  • files.autoSave: 自动保存值设置为off来禁用此功能,设置为afterDelay在配置的延迟时间后保存,设置为onFocusChange在鼠标离开已修改文件的编辑器时保存。
  • files.autoSaveDelay: 设置延迟时间,毫秒为单位,files.autoSave 设置为 afterDelay时有效。

3 搜索

3.1 文件搜索

有時候文件夾下太多,要快速去到对应文件

Ctrl+P 通过键入文件或符号来导航至相应的位置

3.2 文件内容搜索

本文件搜索总所周知,但跨文件搜索如何呢?VS Code允许你在当前打开文件夹中所有文件里面快速搜索,只要输入Ctrl+Shift+F然后输入要搜索的内容,搜索结果将会被按照文件分组显示,文件下显示搜索结果部分和在文件中显示的位置,展开一个文件可以预览该文件中所有的搜索结果,然后单击搜索结果便可以在编辑器中显示。

通过正则表达式配置搜索条件,包含哪些文件,排除哪些文件

Ctrl+Shift+J

例如只在test.cpp里面搜索partion.

  • * 匹配路径段中的一个或多个字符
  • ? 匹配路径段中的一个字符
  • ** 匹配任意数量的路径段,包括空
  • {} 匹配分组条件(如: {**/*.html,**/*.txt} 匹配所有HTML和txt文件)
  • [] 声明匹配一个范围内的所有字符(如:example.[0-9]匹配 example.0, example.1, …

更多关于正则表达式,后面提供。

5 快捷键修改

1 调出键盘快捷键方式 Ctrl+k,Ctrl+s

2 搜索对应的command

3 右击修改快捷方式+enter保存

6 常用文本操作

行复制:Ctrl + c。当你没有选中行中任意字符时,复制出来的实际上是整行的内容;
行移动:Alt + ↑/↓。想整体移动一行或者多行
撤销Ctrl + z
行删除Ctrl+d
复制+粘贴Shift + Alt + ↑/↓
行注释Ctrl + /;行注释取消,只需要再按一次。
块注释Alt + Shit + A /* */这儿最好修改为其他更简单快捷键,我的修改为Ctrl +8
代码格式化Alt + Shit + F
跳转到代码定义F12
代码定义浮窗显示alt+f12
光标回退alt+<-/->: 切换到下一个 / 上一个编辑点。 f12之后想回退到原来的位置
列选,配合复制,删除等操作。
Alt + Shit + 左键:初始光标位置作为矩形的一角,而点击位置作为矩形的对角;
Ctrl + Shit + 左键:和上一个的区别就是行选择,不是矩形区域
Alt + 左键:实际上这个才是我们最常使用的方式,它提供了最大的灵活性。长按 Alt 后,每个点击的位置都是编辑点。注意,这些编辑点是有序的!

更多快捷键使用5查看或者其他方式

7 Diff

这个很关键啊,对于多人协作的git开发,经常会用到

在文件区域找到要比较的两个文件: 首先 右键 → 选择进行比较 选择要比较的基准文件,然后 右键 → 与已选项目进行比较 选择要比较的目标文件。然后就会在界面中展示两份文件的异同。不一样的地方会被高亮出来。

8 设置模板代码段snippet

当我输入一小段我们字符串,然后这些字符可以展开成一大段模板。这样的特性称之为 snippet,也即代码段,比如输入一个for,代码就能展开for循环的格式。

参考: https://blog.csdn.net/maokelong95/article/details/54379046

Git

1 git常用命令

命令 说明
git init 初始化一个本地版本库
git status 查看当前workspace的状态
git add filename 把文件添加到index
git commit -m "log info" 把文件提交到仓库
git log 查看当前分支提交的日志
git reset --hard commit-id 进行了错误提交需要回退,彻底回退到某个版本,本地的源码也会变为上一个版本的内容
git reset --soft commit-id 只回退了commit的信息,不会将源文件的修改也回退,如果还要提交,直接commit即可;
git reflog 显示整个本地仓储的commit, 包括所有branch的commit, 甚至包括已经撤销的commit, 只要HEAD发生了变化, 就会在reflog里面看得到. git log只包括当前分支的commit.
git clone url 通过clone远端的版本库从⽽在本地创建⼀个版本库,
git remote -v 查看远程库信息
git pull 将远程repo更新到本地
git push 将本地commit更新到远程repo
git checkout -b mybranch 创建⾃⼰的⼯作分⽀并切换到该分支
git checkout brachname 单独的切换分支
git checkout --orphan <new_branch> 很重要假如你的某个分支上,积累了无数次的提交,你也懒得去打理,打印出的log也让你无力吐槽,那么这个命令将是你的神器,它会基于当前所在分支新建一个赤裸裸的分支,没有任何的提交历史,但是当前分支的内容一一俱全,新建的分支,严格意义上说,还不是一个分支,因为HEAD指向的引用中没有commit值,只有在进行一次提交后,它才算得上真正的分支。
git merge brachname 要先切换到master分支,在使用将⾃⼰的⼯作合并到master:https://www.jianshu.com/p/58a166f24c81
git merge --abort 撤销合并
git rebase 可以对某一段线性提交历史进行编辑、删除、复制、粘贴,参考:https://www.jianshu.com/p/4a8f4af4e803

2 Git实操

https://learngitbranching.js.org/?demo

参考链接:https://blog.csdn.net/maokelong95/article/details/88805589

VIM

VIM的两种状态

vimm 分为两种状态,即命令状态和编辑状态,在命令状态下,所键入的字符系统均作命令来处理,如:q 代表退出,而编辑状态则是用来编辑文本资料的。当你进入 vim 时,会首先进入命令状态。在命令状态下,按”i”(插入)或”a”(添加)可以进入编辑状态,在编辑状态,按 ESC 键进入命令状态。

在命令状态下,有如下一些常用命令: 新增:

a 从光标后面开始添加文本

A 从光标所在行的末尾开始添加文本插入:

i 从光标前面开始插入文本

I 从光标所在行的开始处插入文本

常用的命令操作

删除与修改

x 删除光标处的字符

dd 删除光标所在的整行

3dd 删除光标所在行以及下面的两行(删除 3 行)

D 删除光标到行尾的文本,常用语删除注释语句 (d$) yy 复制光标所在的整行

[n]yy 从光标开始往下复制 n 行,[n]表示一个整数

p 将复制后的文本粘贴到光标处

u 撤销上次操作

光标移动

^ 光标移动到行首

$ 光标移动到行尾Ctrl+d 向下翻半页Ctrl+f 向下翻一页Ctrl+u 向上翻半页Ctrl+b 向上翻一页

gg 光标定位到文档头 G 光标定位到文档尾 H 光标定位到当前页首

L 光标定位到当前页的最后一行的行首

w 光标往后移一个字

b 光标往前移一个字

[n]+ 光标向后移动 n 行,[n]表示一个整数 10+

[n]- 光标向前移动 n 行,[n]表示一个整数 10-

[n]G 光标定位到第 n 行行首, [n]表示一个整数 20G

查找与替换

/[str] 查找字符串 str,[str]表示要查找的字符串回车后会加亮显示所有找到的字符串,接着

命令n 移动到下一个找到的字符串,命令 N 移动到上一个找到的字符串 eg /hello

部分替换 (只能替换光标之所在的行)

😒 /[src]/[dst] /i 忽略大小写 /g 全部匹配 eg 😒 /hello/world/ig 替换一行

:3,6 s/[src]/[dst]/ig(3-6 行中找) eg :3,6 s/hello/world

全部替换

:%s/[src]/[dst]/g 将文档中所有src 的字符串替换为dst 字符串

:%s/^ //g 将文档每一行的行首的空格去掉

块操作

v 可视化块选择状态,选中块之后,可以对块进行删除(d), 复制(y),剪切(x)

Ctrl +v 竖向选择模式,主要用于批量注释代码,输入步骤如下:

1、首先按ctrl+v,竖选选中要注释的行

2、输入I(注意是大写的 I),然后输入//

3、再输入esc,就会看到选中的行被注释了。

文档保存及退出

结束编辑:

:q 在未修改文档的情况下退出

:q! 放弃文档的修改,强行退出

:w 文档存盘

:wq 文档存盘退出其他:

:help 命令 查看该命令的帮助提示(不常用,当不小心按 F1

时,通过:q 进行退出)

:%!xxd十六进制模式

:%!xxd –r 返回文本模式 中间有一个空格的

如果在编辑过程中不小心按了Ctrl+s,vim 会处于僵死状态,按

Ctrl+q 可以恢复。

执行 vim +3 main.c //表示定位到 main.c 的第 3 行执行 vim +/printf main.c //表示定位到第一个 printf 处

在命令模式下输入:new 2.c //表示再打开一个vim,是横向的 用

vnew 2.c 表示纵向

也可以通过:split vsplit sp vsp,两个窗口之间进行切换的方式:Ctrl+w,w

在命令模式中输入gg=G 可以自动对齐,可以通过 gg=10gg,只自

动对齐第一行到第十行

vim外使用到的命令

sed: 管道查找替换程序

cat a.txt | sed 's/aa/bb/' > b.txt //将a.txt 中的 aa 替换成 bb 并重定向输出到b.txt 中。

posted @ 2020-03-29 22:31  Arrkwin  阅读(400)  评论(0编辑  收藏  举报