2024-01-25|Idea和zsh快捷键
今天做了什么:
- 整理 Idea 快捷键
- 整理 zsh 中定义的常用的快捷键
Idea 快捷键
使用快捷键 command +1 打开 Project 窗口
输入 control + R 可以运行 Java 代码
上下文
在 for 方法上,输入 option + enter,可以调出上下文,替换 for 表达式
在字符串上面输入 option + enter,可以调出上下文。
在字符串上面或者双击选中,然后双击两次 ⇧ ,打开
Search Everywhere
弹窗,然后输入 case ,选择Toggle Case
将 AVERAGE 变为小写。在没有使用的方法参数 redundant 上,输入 option + enter,可以选择
Safe delete 'redunant'
删除该参数在三目运算,输入 option + enter,可以选择
Negate '?:'
搜索
查找最近文件:comand + E
输入 ⇧ + command + A 可以打开 Find Action 窗口。
双击两次 ⇧ 可以打开 Search Everywhere 窗口。输入关键字,可以搜索 java 类。
如果想搜索Java类,则可以输入 command + O,并可以选择在 All Places 搜索。
如果想搜索方法或者变量名称,则可以使用 option + command + O
自动补全
command + ↑ + enter 补全方法体、if、while、for 、switch 后面括号
以下代码,在 new 后面输入 Ran ,然后按 tab 键可以补全 Random,然后在括号内,按 control+space ,可以调出查找窗口,然后选择 PROCESS_ID,最后按 ⇧ + command + enter 完成
class BasicCompletionDemo { private int PROCESS_ID = 0; public void systemProcess(){ System.out.println(PROCESS_ID++); } public BasicCompletionDemo() { byte b = MAX_VALUE; } public void random() { Random random = new ; } }
输入一个表达式,然后按 . 键
control + ⇧ + space
注释
- 输入 command + / ,注释当行代码。
- 选中一段代码块,输入 option + command + /,可以注释代码块。
- 在 java 里面,添加的是
/**/
- 在 xml 里面,添加的是
<!---->
- 在 java 里面,添加的是
代码
代码格式化
option + command + L 格式化代码。
对选中的代码,使用 option + command + L ,可以格式化代码。再使用该快捷键,可以对整个文件进行格式化。
⇧+option + command + L 可以查看格式化代码的设置
command + P 查看方法签名
F1 查看方法的 Javadoc
option + space 或者 command + Y 查看方法的定义
使用 option + command + T 可以打开 Surround with 窗口;使用 option + command + del 可以打开 Unwrap 窗口
重构
重命名 ⇧ + F6
抽取变量 option + command + V
抽取方法 option + command + M
调出重构窗口 control + T
复制和删掉代码
复制一行代码,使用 command + D
按 ⇧ + ↑ 两次,可以选择两行,然后 使用 command + D,可以复制两行代码。
如果要删除当前行代码,可以使用 command + del 快捷键。
剪切行代码,使用 command + x
复制代码,使用 command + c
- 鼠标在某一行,输入 command + c 可以选中该行
选中
把鼠标停留在一个单词,输入 option + ↑,可以选择单词;再次输入 option + ↑,可以选择一句话;再次输入 option + ↑,可以选中整个字符串变量;再次输入 option + ↑,可以选择方法的所有变量;再次输入 option + ↑,可以选中方法加所有参数;再次输入 option + ↑,可以选中整行内容。
使用 control + G 选中鼠标所在单词
再次使用 control + G 选中下一个鼠标所在单词
使用 control + ⇧ + G 取消选择上一个
使用 control + command + G 选择所有出现鼠标所在单词,然后,输入一个单词,会替换所有选中的单词。
移动代码
将当前行代码向上移:option + ⇧ + ↑
将当前行代码向下移:option + ⇧ + ↓
将当前方法向上移:command + ⇧ + ↑
将当前方法向下移:command + ⇧ + ↓
收缩代码
收缩代码:command + -
展开代码:command + =
收缩一个文件的所有代码:command + ⇧ + -
展开一个文件的所有代码:command + ⇧ + =
zsh中定义的快捷键
~/.oh-my-zsh/plugins/git/git.plugin.zsh
alias g='git'
alias ga='git add'
alias gaa='git add --all' #将所有变更添加到暂存区
alias gapa='git add --patch' #交互式的选中变更添加到暂存区
#分支相关
alias gb='git branch' #列出当前仓库中所有的分支,并在当前分支前面标记一个星号
alias gba='git branch -a' #列出所有的本地分支和远程分支
alias gbd='git branch -d' #命令用于删除指定的本地分支
alias gbD='git branch -d --force' # 命令用于强制删除指定的本地分支
alias gbm='git branch -m' #重命名分支
alias gbnm='git branch --no-merged' #列出所有未合并到当前分支的分支
alias gbr='git branch --remote' #列出远程分支
alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)' #将当前分支与远程仓库的同名分支建立起追踪关系
#在本地和远程仓库中重命名 Git 分支
function grename() {
if [[ -z "$1" || -z "$2" ]]; then
echo "Usage: $0 old_branch new_branch"
return 1
fi
# Rename branch locally
git branch -m "$1" "$2"
# Rename branch in origin remote
if git push origin :"$1"; then
git push --set-upstream origin "$2"
fi
}
alias gc='git commit --verbose' #提交当前暂存区中的变更,并显示详细的提交信息
alias gc!='git commit --verbose --amend'#修改最近一次的提交,并在提交过程中显示详细的变更信息
alias gcmsg='git commit -m' #提交当前暂存区中的变更并提供提交信息
alias gco='git checkout'
alias gcor='git checkout --recurse-submodules' #递归地切换到主仓库以及所有子模块的相应提交或分支
alias gcb='git checkout -b' #创建一个新分支并切换到该分支
alias gcB='git checkout -B' #创建一个新分支并强制切换到该分支
alias gcd='git checkout $(git_develop_branch)'
alias gcm='git checkout $(git_main_branch)'
alias gcl='git clone --recurse-submodules' #克隆代码
gccd #克隆代码并进入目录
alias gcf='git config --list'
alias gf='git fetch'
alias gfo='git fetch origin'
alias gm='git merge'
alias gma='git merge --abort'
alias gms="git merge --squash"
alias gmom='git merge origin/$(git_main_branch)'
alias gmum='git merge upstream/$(git_main_branch)'
#拉取代码
alias gl='git pull'
alias gpr='git pull --rebase' #拉取远程仓库的最新提交,并将本地提交应用到最新提交
alias gpra='git pull --rebase --autostash' #拉取远程仓库的最新提交,并将本地提交应用到最新提交之上,同时自动保存和恢复未提交的更改
alias ggpull='git pull origin "$(git_current_branch)"'
#从远程仓库拉取最新提交,并使用 rebase 的方式将本地提交应用到拉取的提交之
function ggu() {
[[ "$#" != 1 ]] && local b="$(git_current_branch)"
git pull --rebase origin "${b:=$1}"
}
#提交代码
alias gp='git push'
alias gpd='git push --dry-run'
alias ggpush='git push origin "$(git_current_branch)"'
#拉取代码并提交
function ggpnp() {
if [[ "$#" == 0 ]]; then
ggl && ggp
else
ggl "${*}" && ggp "${*}"
fi
}
alias grb='git rebase'
alias grba='git rebase --abort'
alias grbc='git rebase --continue'
alias grbi='git rebase --interactive'
alias grbo='git rebase --onto'
alias grbs='git rebase --skip'
alias grbd='git rebase $(git_develop_branch)'
alias grbm='git rebase $(git_main_branch)'
alias grbom='git rebase origin/$(git_main_branch)'
alias gr='git remote'
alias gra='git remote add'
alias grrm='git remote remove'
alias grmv='git remote rename'
alias grset='git remote set-url'
alias grup='git remote update'
alias gst='git status'
Related content
- 2024-11-13|今天我做了什么
- 2024-11-07|今天我做了什么
- 2024-11-06|今天我做了什么
- 2024-11-05|今天我做了什么
- 2024-11-04|SivaLabs博客文章
- 2024-02-20|RateLimitAspect请求限流、调整spring-cloud-examples项目结构
- 2024-02-19|foodie-cloud集成Sharding Sphere实现读写分离
- 2024-02-18|NewRelice应用性能监控、6个Diagrams工具、foodie-food测试
- 2024-02-05|Spring Cloud Config快速入门
- 2024-02-04|foodie-cloud集成Resilience4j