环境相关 右键开启 Terminal 系统偏好设置 > 键盘 > 快捷键 > 服务,勾选 “新建位于文件夹位置的终端窗口”
右键创建新文件 安装 “New File Menu “
管理员权限打开 APP 1 2 3 $ cd /Applications $ sudo open -a 'IntelliJ IDEA.app'
在命令行中用 Finder 打开当前目录
配置 PATH 环境变量 1 2 3 4 5 6 $ vim /etc/profile export PATH=$PATH :<PATH> $ source /etc/profile
查看本机信息 IP 1 $ ifconfig | grep "inet " | grep -v 127.0.0.1
1 inet 8.8.8.8 netmask 0xfffff800 broadcast 8.8.8.8
DNS 1 2 $ nslookup store.chanjet.com $ cat /etc/resolv.conf
轻点触摸板
(对 Mac ™ 的截图)
Java 相关 查看 JDK 安装目录 1 $ /usr/libexec/java_home -V
1 2 3 Matching Java Virtual Machines (1): 1.8.0_231, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home
多 JDK 版本
1 2 3 4 5 6 7 8 9 10 11 12 13 alias /usr/libexec/java_home='echo $JAVA_HOME' unalias /usr/libexec/java_homeexport JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)export JAVA_12_HOME=$(/usr/libexec/java_home -v12)alias java8='export JAVA_HOME=$JAVA_8_HOME' alias java12='export JAVA_HOME=$JAVA_12_HOME' alias /usr/libexec/java_home='echo $JAVA_HOME' export JAVA_HOME=$JAVA_8_HOME export PATH=$PATH :$JAVA_HOME /bin
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ source ~/.bashrc $ java -version java version "1.8.0_231" Java(TM) SE Runtime Environment (build 1.8.0_231-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode) $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home $ java12 $ java -version java version "12.0.2" 2019-07-16 Java(TM) SE Runtime Environment (build 12.0.2+10) Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing) $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home
Tips: 更多 Java 实用技巧,详见《那些绕不过去的 Java 知识点 》
Maven 相关 权限不足导致下载失败 描述 报错无法解析依赖,找不到 xxx.lock
文件
解决 对 Maven 的依赖文件存放目录赋权即可
1 $ sudo chown -R benedictjin:wheel /data/maven/repo
补充 另外,还可以通过以下一系列命令,统一对目录下的所有文件和文件夹进行权限修改
1 2 3 4 $ sudo chown -R benedictjin:wheel * $ sudo chmod -R g+rwX . $ sudo find . -type d -exec chmod 755 {} \; $ sudo find . -type f -exec chmod 644 {} \;
同理,还可以利用这个方法,删除 .DS_Store
文件
1 2 3 4 5 6 $ find . -name '.DS_Store' $ find . -name '.DS_Store' -type f -exec rm -f {} \; $ find . -name '.DS_Store'
而如果需要执行多个命令的话,可以指定多个 -exec
参数
1 2 3 4 5 $ find . -name '*.md' -type f -exec grep '##' {} \; -exec echo {} \; $ find . -name '*.md' -type f \( -exec grep '##' {} \; -o -exec true \; \) -exec echo {} \;
Tips: 更多 Maven 实用技巧,详见《Maven 高级玩法 》
命令相关 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 $ cd "$(brew --repo) " $ git remote set-url origin git://mirrors.ustc.edu.cn/brew.git $ cd "$(brew --repo) /Library/Taps/homebrew/homebrew-core" $ git remote set-url origin git://mirrors.ustc.edu.cn/homebrew-core.git $ brew update $ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile $ source ~/.bash_profile $ cd "$(brew --repo) " $ git remote set-url origin https://github.com/Homebrew/brew.git $ cd "$(brew --repo) /Library/Taps/homebrew/homebrew-core" $ git remote set-url origin https://github.com/Homebrew/homebrew-core.git
操作类似 cat 命令,但是高亮了输出
1 2 3 4 5 $ brew install ccat $ git diff HEAD^ | ccat
通过命令行格式化 U 盘
1 2 3 4 5 6 $ diskutil list $ diskutil unmountDisk /dev/disk2 $ diskutil eraseDisk JHFS+ raspberry disk2
简化了 find 命令,使用起来更加简单高效,还会自动忽略隐藏目录(如 .git/
、.deploy_git/
等)
1 2 $ brew install fd $ fd xml
1 2 3 4 5 pom.xml processing/pom.xml server/pom.xml services/pom.xml sql/pom.xml
自带的 grep 命令不支持前缀匹配等操作,而 ggrep 命令可以有效地支持高阶正则表达式
1 2 3 4 $ brew install grep $ find . -name '*.md' -type f -exec ggrep -Pio '(?! )\+(?! )| \+(?! )|(?<! )\+ ' {} \; -exec echo {} \;
增强了 top 命令,展示页面更加丰富
1 2 $ brew install htop $ htop
强化 man 命令,对展示的文档进行了简化,并展示了对应的例子
1 2 3 4 5 $ npm install -g tldr $ tldr cd
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ✔ Page not found. Updating cache... ✔ Creating index... cd Change the current working directory. - Go to the given directory: cd path/to/directory - Go to home directory of current user: cd - Go up to the parent of the current directory: cd .. - Go to the previously chosen directory: cd -
tree 1 2 3 4 5 6 $ brew install tree $ cd $ES_HOME /data $ tree -L 5
1 2 3 4 5 6 7 8 9 10 . └── nodes └── 0 ├── _state │ ├── global-20.st │ ├── manifest-35.st │ └── node-3.st └── node.lock 3 directories, 4 files
工具相关 展示空格和制表符 使用 ⌘, 组合快捷键后,增加 "draw_white_space": "all"
配置项
1 2 3 4 5 6 7 8 9 { "color_scheme" : "Packages/Color Scheme - Default/Mariana.sublime-color-scheme" , "font_size" : 14 , "ignored_packages" : [ "Vintage" ] , "word_wrap" : "true" , "draw_white_space" : "all" }
删除重复行 1 2 ^(.+)$[\r\n](^\1$[\r\n]{0, 1})+
常用插件 JSON 格式化 使用 ⌘⇧P 组合快捷键后,输入 Pretty JSON: Validate
再回车,对文件中的 JSON 进行校验;输入 Pretty JSON: Format and Sort JSON
再回车,对文件中的 JSON 进行格式化;输入 Pretty JSON: Minify (compress) JSON
再回车,将文件中的 JSON 压缩成一行
二进制文件可视化 使用 ⌘⇧P 组合快捷键后,输入 HexViewer: Toggle Hex View
再回车,开启二进制可视化功能
安装 zsh 1 $ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh) "
配置主题
高亮 语法高亮 1 2 $ brew install zsh-syntax-highlighting $ vim ~/.zshrc
1 source /usr/local/Cellar/zsh-syntax-highlighting/0.6.0/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
1 2 3 4 5 6 $ wget http://ethanschoonover.com/solarized/files/solarized.zip $ unzip solarized.zip $ cd solarized/vim-colors-solarized/colors $ mkdir -p ~/.vim/colors $ cp solarized.vim ~/.vim/colors/ $ vi ~/.vimrc
1 2 3 syntax enable set background=darkcolorscheme solarized
ls 高亮 1 2 3 $ brew install coreutils $ gdircolors --print-database > ~/.dir_colors $ vim ~/.zshrc
1 if brew list | grep coreutils > /dev/null ; then PATH="$(brew --prefix coreutils) /libexec/gnubin:$PATH " alias ls ='ls -F --show-control-chars --color=auto' eval `gdircolors -b $HOME /.dir_colors` fi
加载环境变量
自动补齐 1 2 3 $ cd ~/.oh-my-zsh/custom/plugins $ git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM /plugins/zsh-autosuggestions $ vim ~/.zshrc
1 2 3 plugins=(zsh-autosuggestions git)
自动补全只能看到一个字符 如果发现自动提示的命令只能展示出一个字符,则说明 ANSI Colors 里面第一行的 Normal 和 Bright 颜色过于相近
scp 报错 cannot change locale (UTF-8) 使用 zsh 替代了 Mac 上原生的 bash 之后,本地化的设置默认是没有配置的,可以通过 locale 命令来检查。解决方法也很简单,具体操作如下:
1 2 export LC_ALL=en_US.UTF-8export LANG=en_US.UTF-8
1 2 $ source ~/.zshrc $ locale
1 2 3 4 5 6 7 8 LANG="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_CTYPE="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_ALL="en_US.UTF-8"
删除 zsh 历史记录 1 $ echo "" > ~/.zsh_history & exec $SHELL -l
卸载 zsh
执行了 chsh 之后,路径的高亮没有了
1 MacBook-Pro:~ yuzhouwan$
1 jiayi.jin@MacBook-Pro > ~
Intellij IDEA 不停顿地 Debug
(对 IntelliJ IDEA ™ 的截图)
Debug 启动的时候,卡在了 Finished, saving caches 1 2 3 4 5 6 7 $ hostname BenedictJin.local $ sudo vim /etc/hosts 127.0.0.1 localhost BenedictJin.local
只格式化自己修改的代码 通过 ⌘⌥⇧L
组合快捷键打开配置面板,选择 Only VCS changed text
后,再次使用 ⌘⌥L
组合快捷键格式化代码,便只会影响本次修改的、尚未 commit 的代码了
(对 IntelliJ IDEA ™ 的截图)
生成 SerialVersionUID 安装 GenerateSerialVersionUID 插件后,在类文件中,使用 ⌘N
组合快捷键,并选择 SerialVersionUID 菜单,即可生成类似如下的一行代码:
1 private static final long serialVersionUID = -90000066L ;
Typroa 支持 callout 首先通过 ⌘,
快速打开 Typroa 的控制面板,依次点击 General
- Open Theme Folder
按钮,打开 theme
目录,并在该目录下新建 base.user.css
文件,填写如下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 div [style^='callout:' ] { padding : 20px ; margin : 20px 0 ; border : 1px solid #eee ; border-left-width : 6px !important ; border-radius : 3px ; } div [style^='callout:' ] h4 { margin-top : 0 ; margin-bottom : 1em ; } div [style^='callout:' ] p :last-child { margin-bottom : 0 ; } div [style^='callout:' ] code { border-radius : 3px ; } div [style^='callout:' ] +div [style^='callout:' ] { margin-top : -5px ; } div [style='callout:default' ] { border-left-color : #777 !important ; } div [style='callout:default' ] h4 { color : #777 !important ; } div [style='callout:primary' ] { border-left-color : #428bca !important ; } div [style='callout:primary' ] h4 { color : #428bca !important ; } div [style='callout:success' ] { border-left-color : #5cb85c !important ; } div [style='callout:success' ] h4 { color : #5cb85c !important ; } div [style='callout:danger' ] { border-left-color : #d9534f !important ; } div [style='callout:danger' ] h4 { color : #d9534f !important ; } div [style='callout:warning' ] { border-left-color : #f0ad4e !important ; } div [style^='callout:warning' ] h4 { color : #f0ad4e !important ; } div [style^='callout:info' ] { border-left-color : #5bc0de !important ; } div [style^='callout:info' ] h4 { color : #5bc0de !important ; }
重启 Typroa 之后,即可使用 callout 功能:
1 2 3 4 5 <div style ="callout:default" > default</div > <div style ="callout:primary" > primary</div > <div style ="callout:success" > success</div > <div style ="callout:warning" > warning</div > <div style ="callout:info" > info</div >
效果如下:
(对 Typroa ™ 的截图)
Chrome Octotree 代码大纲
(对 Github ™ 的截图)
Isometric Contributions 可视化
(对 Github ™ 的截图)
Your Connection is not private 输入 thisisunsafe
便可绕过 Chrome 的安全检查
设置所有网页为黑色背景 在顶部搜索框中输入 chrome://flags/#enable-force-dark
后回车,然后将 Auto Dark Mode for Web Contents
配置为 Enabled
(默认为 Default
)
Quick Start 1 2 3 4 $ brew install asciinema $ asciinema rec
鉴权 如果你担心发布在网上,存在隐私问题。你可以注册 ascinema 的账号,并设置录制内容是否公开(默认为 private)
示例 1 2 3 4 5 6 $ asciinema rec $ cd /tmp $ vim open.sh open 'https://yuzhouwan.com/' $ sh open.sh $ exit
1 2 3 4 $ brew install imagemagick $ brew install gifsicle $ npm install --global asciicast2gif $ asciicast2gif https://asciinema.org/a/246879.json 246879.gif
效果
(利用 Asciinema ™ 录制而成)
Alfred 使用 ⌘, 组合快捷键后,进入 Features
- Terminal
- Application
,选择 Custom
后,填入以下脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 -- For the latest version: -- https://github.com/vitorgalvao/custom-alfred-iterm-scripts -- Set this property to true to always open in a new window property open_in_new_window : false -- Handlers on new_window() tell application "iTerm" to create window with default profile end new_window on new_tab() tell application "iTerm" to tell the first window to create tab with default profile end new_tab on call_forward() tell application "iTerm" to activate end call_forward on is_running() application "iTerm" is running end is_running on has_windows() if not is_running() then return false if windows of application "iTerm" is {} then return false true end has_windows on send_text(custom_text) tell application "iTerm" to tell the first window to tell current session to write text custom_text end send_text -- Main on alfred_script(query) if has_windows() then if open_in_new_window then new_window() else new_tab() end if else -- If iTerm is not running and we tell it to create a new window, we get two -- One from opening the application, and the other from the command if is_running() then new_window() else call_forward() end if end if -- Make sure a window exists before we continue , or the write may fail repeat until has_windows() delay 0.01 end repeat send_text(query) call_forward() end alfred_script
1 2 $ curl --silent 'https://raw.githubusercontent.com/vitorgalvao/custom-alfred-iterm-scripts/master/custom_iterm_script.applescript' | pbcopy
配合 iTerm2 完成免密登录 1 2 3 4 5 6 $ ssh-keygen $ ssh-copy-id -i yuzhouwan@10.10.10.10 $ ssh yuzhouwan@10.10.10.10
1 2 3 Host dev HostName 10.10.10.10 User yuzhouwan
1 2 $ wget https://github.com/deanishe/alfred-ssh/releases/download/v0.8.0/Secure-SHell-0.8.0.alfredworkflow
在 iTerm2 中,使用 ⌘, 组合快捷键后,进入 Preferences
- Profiles
- Profile Name
- default
- General
- URL Schemes
- Schemes handled
,随后选中 ssh
即可。实际效果,如下图所示:
(对 Alfred ™ 的截图)
快捷键 Mac 键盘符号
键盘符号
含义
⌘
Command
⇧
Shift
⌥
Option
⌃
Control
↩︎
Return / Enter
⌫
Delete
⌦
向前删除键(Fn + Delete)
↑
上箭头
↓
下箭头
←
左箭头
→
右箭头
⇞
Page Up(Fn + ↑)
⇟
Page Down(Fn + ↓)
Fn + ←
Home
Fn + →
End
⇥
右制表符(Tab 键)
⇤
左制表符(Shift + Tab)
⎋
Escape(Esc)
Mac 本身相关 访问隐藏目录 在 Finder 里面同时按 Command + Shift + G
即可输入隐藏目录,如 /usr/bin/java
Vim 相关
快捷键
含义
⌃F
下翻页
⌃B
上翻页
⌃F
下翻页
⌃B
上翻页
⇧M
将光标移动的该页中部
GG
回到文件顶部
⇧G
回到文件底部
HJKL
移动光标(HL: 左右;JK: 上下)
Tips: 更多 Vim 实用技巧 和 完整快捷键 详见《Linux 实战技巧 》的 vim 和 cheat sheet 部分
快捷键
含义
⌥⌘C
展示粘贴板上历史命令、图片和文件列表
iTerm2 相关
快捷键
含义
⌘⇧I
开启同时向多窗口输入命令的功能
Intellij Idea 相关 Editing(编辑)
快捷键
含义
⌃Space
基本的代码补全(补全任何类、方法、变量)
⌃⇧Space
智能代码补全(过滤器方法列表和变量的预期类型)
⌘⇧↩
自动结束代码,行末自动添加分号
⌘P
显示方法的参数信息
⌃J
快速查看文档
⇧F1
查看外部文档(在某些代码上会触发打开浏览器显示相关文档)
⌘+鼠标
显示简要信息
⌘F1
在错误或警告处显示具体描述信息
⌘N, ⌃↩
生成代码 (getter
、setter
、构造函数、hashCode
/ equals
/ toString
)
⌃O
覆盖方法(重写父类方法)
⌃I
实现方法(实现接口中的方法)
⌘⌥T
包围代码(使用 if..else
, try..catch
, for
, synchronized
等包围选中的代码)
⌘/
注释 / 取消注释与行注释
⌘⌥/
注释 / 取消注释与块注释
⌥↑
连续选中代码块
⌥↓
减少当前选中的代码块
⌃⇧Q
显示上下文信息
⌥↩
显示意向动作和快速修复代码
⌘⌥L
格式化代码
⌃⌥O
优化 import
⌃⌥I
自动缩进线
⇥ / ⇧⇥
缩进代码 / 反缩进代码
⌘X
剪切当前行或选定的块到剪贴板
⌘C
复制当前行或选定的块到剪贴板
⌘V
从剪贴板粘贴
⌘⇧V
从最近的缓冲区粘贴
⌘D
复制当前行或选定的块
⌘⌫
删除当前行或选定的块的行
⌃⇧J
智能的将代码拼接成一行
⌘↩
智能的拆分拼接的行
⇧↩
开始新的一行
⌘⇧U
大小写切换
⌘⇧] / ⌘⇧[
选择直到代码块结束 / 开始
⌥⌦
删除到单词的末尾
⌥⌫
删除到单词的开头
⌘+ / ⌘-
展开 / 折叠代码块
⌘⇧+
展开所以代码块
⌘⇧-
折叠所有代码块
⌘W
关闭活动的编辑器选项卡
Search / Replace(查询 / 替换)
快捷键
含义
Double ⇧
查询任何东西
⌘F
文件内查找
⌘G
查找模式下,向下查找
⌘⇧G
查找模式下,向上查找
⌘R
文件内替换
⌘⇧F
全局查找(根据路径)
⌘⇧R
全局替换(根据路径)
⌘⇧S
查询结构(Ultimate Edition 版专用,需要在 Keymap 中设置)
⌘⇧M
替换结构(Ultimate Edition 版专用,需要在 Keymap 中设置)
Usage Search(使用查询)
快捷键
含义
⌥F7 / ⌘F7
在文件中查找用法 / 在类中查找用法
⌘⇧F7
在文件中突出显示的用法
⌘⌥F7
显示用法
Compile and Run(编译和运行)
快捷键
含义
⌘F9
编译 Project
⌘⇧F9
编译选择的文件、包或模块
⌃⌥R
弹出 Run 的可选择菜单
⌃⌥D
弹出 Debug 的可选择菜单
⌃R
运行
⌃D
调试
⌃⇧R, ⌃⇧D
从编辑器运行上下文环境配置
Debugging(调试)
快捷键
含义
F8
进入下一步,如果当前行断点是一个方法,则不进入当前方法体内
F7
进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中
⇧F7
智能步入,断点所在行上有多个方法调用,会弹出进入哪个方法
⇧F8
跳出
⌥F9
运行到光标处,如果光标前有其他断点会进入到该断点
⌥F8
计算表达式(可以更改变量值使其生效)
⌘⌥R
恢复程序运行,如果该断点下面代码还有断点则停在下一个断点上
⌘F8
切换断点(若光标当前行有断点则取消断点,没有则加上断点)
⌘⇧F8
查看断点信息
Navigation(导航)
快捷键
含义
⌘O
查找类文件
⌘F12
弹出当前文件结构层,可以在弹出的层上直接输入进行筛选(可用于搜索类中的方法)
⌘⇧O
查找所有类型文件、打开文件、打开目录,打开目录需要在输入的内容前面或后面加一个反斜杠 /
⌘⌥O
前往指定的变量 / 方法
⌃← / ⌃→
左右切换打开的编辑 tab 页
F12
返回到前一个工具窗口
⎋
从工具窗口进入代码文件窗口
⇧⎋
隐藏当前或最后一个活动的窗口,且光标进入代码文件窗口
⌘⇧F4
关闭活动 run / messages / find / … 的 tab 页
⌘L
在当前文件跳转到某一行的指定处
⌘E
显示最近打开的文件记录列表
⌘⌥← / ⌘⌥→
退回 / 前进到上一个操作的地方
⌘⇧⌫
跳转到最后一个编辑的地方
⌥F1
显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择(如在代码编辑窗口可以选择显示该文件的 Finder)
⌘B / ⌘
鼠标点击 进入光标所在的方法 / 变量的接口或是定义处
⌘⌥B
跳转到实现处,在某个调用的方法名上使用会跳到具体的实现处,可以跳过接口
⌥ Space, ⌘Y
快速打开光标所在方法、类的定义
⌃⇧B
跳转到类型声明处
⌘U
前往当前光标所在方法的父类的方法 / 接口定义
⌃↓ / ⌃↑
当前光标跳转到当前文件的前一个 / 后一个方法名位置
⌘] / ⌘[
移动光标到当前所在代码的花括号开始/结束位置
⌃H
显示当前类的层次结构
⌘⇧H
显示方法层次结构
⌃⌥H
显示调用层次结构
F2 / ⇧F2
跳转到下一个 / 上一个突出错误或警告的位置
F4 / ⌘↓
编辑 / 查看代码源
⌥ Home
显示到当前文件的导航条
F3
选中文件 / 文件夹 / 代码行,添加 / 取消书签
⌥F3
选中文件 / 文件夹 / 代码行,使用助记符添加 / 取消书签
⌃0…⌃9
定位到对应数值的书签位置
⌘F3
显示所有书签
Refactoring(重构)
快捷键
含义
F5
复制文件到指定目录
F6
移动文件到指定目录
⌘⌫
在文件上为安全删除文件,弹出确认框
⇧F6
重命名文件
⌘F6
更改签名
⌘⌥N
一致性
⌘⌥M
将选中的代码提取为方法
⌘⌥V
提取变量
⌘⌥F
提取字段
⌘⌥C
提取常量
⌘⌥P
提取参数
VCS(版本控制)
快捷键
含义
⌘K
提交代码到版本控制器
⌘T
从版本控制器更新代码
⌥⇧C
查看最近的变更记录
⌃C
快速弹出版本控制器操作面板
Live Templates(动态代码模板)
快捷键
含义
⌘⌥J
弹出模板选择窗口,将选定的代码使用动态模板包住
⌘J
插入自定义动态代码模板
General(通用)
快捷键
含义
⌘1…⌘9
打开相应编号的工具窗口
⌘S
保存所有
⌘⌥Y
同步、刷新
⌃⌘F
切换全屏模式
⌘⇧F12
切换最大化编辑器
⌥⇧F
添加到收藏夹
⌥⇧I
检查当前文件与当前的配置文件
§⌃, ⌃`
快速切换当前的 scheme(切换主题、代码样式等)
⌘,
打开 IDEA 系统设置
⌘;
打开项目结构对话框
⇧⌘A
查找动作(可设置相关选项)
⌃⇥
编辑窗口标签和工具窗口之间切换(如果在切换的过程加按上 delete,则是关闭对应选中的窗口)
Other
快捷键
含义
⌘`
项目之间的切换
⌥⇧U
装上 CamelCase 插件之后,切换变量的驼峰法命名
⌃⌘U
装上 Translation 插件之后,可以快速翻译
⌃⌘O
装上 Translation 插件之后,可以翻译并替换
⌥S
装上 OnlineSearch 插件之后,可以配置为该快捷键
⌘⌥⇧/
使用 2018.3 EAP 版本时候,开启 JVM Profile 功能
VS Code 相关
快捷键
含义
⌥⇧/↓
上下移动一行
Shift+⌥⇧/↓
上下复制一行
踩过的坑 Error: Unknown command: services 描述 1 $ brew services start grafana
1 Error: Unknown command : services
1 $ brew tap homebrew/services
升级 Catalina 系统后根目录下文件消失 解决 已经被移动到 /Users/Shared/Relocated Items/Security
目录下了
升级 Catalina 系统后根目录无法创建文件夹 描述 1 2 $ cd / $ sudo mkdir yuzhouwan
1 mkdir : yuzhouwan: Read-only file system
解决 确保 SIP (S ystem I ntegrity P rotection)关闭的情况下,给更目录赋予写入的权限即可
1 System Integrity Protection status: disabled.
1 2 $ sudo mount -uw / $ sudo mkdir /yuzhouwan
删除雷蛇应用后,仍然显示雷蛇图标 解决 1 2 3 4 $ launchctl remove com.razer.rzupdater $ launchctl remove com.razerzone.rzdeviceengine $ sudo rm /Library/LaunchAgents/com.razer.rzupdater.plist $ sudo rm -rf /Library/Application\ Support/Razer
自带的 grep 不支持 -P 参数 解决 1 2 $ brew install grep $ vim tmp
1 $ /usr/local/opt/grep/libexec/gnubin/grep -P '[\p{Han}]' tmp
Version value must be a string 描述
1 2 3 4 5 6 7 8 9 10 11 12 13 Traceback (most recent call last): 11: from /usr/local/Homebrew/Library/Homebrew/brew.rb:23:in `<main>' 10: from /usr/local/Homebrew/Library/Homebrew/brew.rb:23:in `require_relative' 9: from /usr/local/Homebrew/Library/Homebrew/global.rb:37:in `<top (required)>' 8: from /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 7: from /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 6: from /usr/local/Homebrew/Library/Homebrew/os.rb:3:in `<top (required)>' 5: from /usr/local/Homebrew/Library/Homebrew/os.rb:21:in `<module:OS>' 4: from /usr/local/Homebrew/Library/Homebrew/os/mac.rb:58:in `prerelease?' 3: from /usr/local/Homebrew/Library/Homebrew/os/mac.rb:24:in `version' 2: from /usr/local/Homebrew/Library/Homebrew/os/mac.rb:24:in `new' 1: from /usr/local/Homebrew/Library/Homebrew/os/mac/version.rb:26:in `initialize' /usr/local/Homebrew/Library/Homebrew/version.rb:368:in `initialize' : Version value must be a string; got a NilClass () (TypeError)
解决
关闭系统升级提醒 解决 1 2 3 4 $ defaults write com.apple.systempreferences AttentionPrefBundleIDs 0 && killall Dock $ defaults write com.apple.systempreferences AttentionPrefBundleIDs 1 && killall Dock
Typora 不识别内联公式 问题 Typora 识别不了 $O(n)$ 这样的内联公式
解决 使用 ⌘ + ,
组合快捷键打开 Typora 的配置页面,点击 Markdown 菜单,勾选上“内联公式”即可
资源 理论
软件 通用
iTerm2
Jump Desktop
Sublime
Chrome
硬件
工具网站
图像 素材
图标
纹理背景
地图图表
群名称
群号
人工智能(高级)
人工智能(进阶)
BigData
算法