PyCharm/IDEA 使用技巧总结

Posted michael-xiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyCharm/IDEA 使用技巧总结相关的知识,希望对你有一定的参考价值。

基本概念

IDEA 没有类似 Eclipse 的工作空间的概念(workspace),最大单元就是 Project。这里可以把 Project 理解为 Eclipse 中的 workspace。Module 可以理解为 Eclipse 中的 project。一个 工程(Project) 下可以创建多个 模块(Moudle)。

  • src 目录,用于存放代码
  • .idea 目录和 project01.iml 文件都是 IDEA 工程特有的。
  • 删除 module ,这样不会删除代码文件,只是从 Project 中移除组织关系,如下图:
    技术图片
    技术图片

    系统设置

设置Tab为4个空格

不要勾选Use Tab character

技术图片

设置显示收藏栏等工具栏

技术图片

支持滚轮调节字体大小

技术图片

鼠标滑过,显示文档

技术图片

设置换行符默认为LF

Editor->Code Style 页面不仅能设置换行符,还可以设置 wrap columns

技术图片

参考:

设置 File Encodings

Settings->Editor->File Encodings,编码全都设为 UTF-8

技术图片

设置显示空格

「游标卡尺」的名号不是白叫的,所以,必须设置显示空格、缩进等,可以在 Settings->Editor->General->Apperance中设置显示空格、行号、CSS颜色、方法分隔符等效果。

ctrl+alt+s #输入whitespace,搜索相关设置,打开

设置头信息

Settings->Editor->File and Code Templates-Files->Includes->File Header 设置如下模板:

技术图片

Python 头信息设置:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : ${DATE} ${TIME}
# @Author  : Michael
# @File    : ${NAME}.py
# @Software: ${PRODUCT_NAME}

Java 头信息设置:

/**
 * Description: 
 * User: ${USER}
 * Date: ${YEAR}-${MONTH}-${DAY}
 * Time: ${TIME}
 */

自动编译

有时候我们需要操作 class 文件时,却忘记了对 java 类文件进行编译,从而还是对旧的文件进行了操作。

技术图片

省电模式

在菜单栏 File 下面有一个选项是 Power Save Mode,这个叫「省电模式」,如果不小心勾选了这个选项,那么会关掉代码检查和代码提示等功能,所以需要注意。

给提示时忽略大小写

Java 是严格区分大小写的,未设置时,输入 str 时,它不会提示 String,要想实现忽略大小写的情况它也能智能提示,可以进行如下设置,而且,这样设置它也不是完全按照首字母进行匹配了,比如你输入 hmap 时,也会看到 HashMap 的智能提示,相当方便:

技术图片

自定义 Terminal

settings->Tools->Terminal

Shell path 原来的值是:

  • C:WindowsSystem32cmd.exe Windows

修改为:

  • C:Program FilesGitinash.exe 修改为 Git bash 的终端;
  • "C:WindowsSystem32cmd.exe" /k ""%CMDER_ROOT%vendorinit.bat"" 修改为 Cmder 的终端,这种方式就会弹出 Cmder 的窗口,需要配置系统变量 CMDER_ROOT,值为:D:Green-SFcmder

参考:

脚本运行结束后留在命令行

这样脚本运行中的变量在脚本结束后还可以调用,调试时还是挺好用

技术图片

设置Tab标签页

File->Editor->General->EditorTable->Tab closing Policy->Tab limit

Windows->Editor Tabs 可以设置标签页的相关内容,比如:

  • Tabs Placement 放置位置,我勾选了 RightShow tab in single row
  • 勾选了 Sort Tabs By Filename
  • 勾选了 Open New Tabs At The End

我设置最多打开标签页10个,同时将位置移到了右边,通过alt+←/→可以切换工作区。默认是10,即最多打开十个窗口,再打开新的就会把之前的窗口T掉!

自动导包 import popup

Editor->General->Auto Import->Python->Show import popup
技术图片

主题

关联数据库

技术图片

生成 JavaDOC

Javadoc用于描述类或者方法的作用,具体介绍,可查看CSDN-Javadoc 使用详解

技术图片

Locale:输入语言类型:zh_CN
Other command line arguments:-encoding UTF-8 -charset UTF-8

技术图片

缓存和索引的清理

IDEA 首次加载项目时,都会创建索引。创建索引的过程,暂时不要去编辑代码,避免遇到未知问题。有时候意外断电或蓝屏,出现索引损坏情况,可以清除缓存和索引,还原成默认状态。

File-Invalidate Caches

技术图片

技术图片

这个会将本地修改历史也会清理掉,如果想要将这个数据保留,LocalHistory 需要提前备份:

# system  目录,系统文件目录,是 IDEA 与开发项目一个桥梁目录,里边主要有缓存、索引、容器文件输出等等
/Users/michael/Library/Caches/IntelliJIdea2018.2/LocalHistory
# 顺带看一下 config 目录,是 IDEA 个性化设置目录,是整个 IDE 设置目录
/Users/michael/Library/Preferences/IntelliJIdea2018.2

参考:

取消更新

取消 IDEA 自动更新,避免引入不稳定的问题:
技术图片

快捷键

Mac 的 Command 键一般是对应了 Win 的 Ctrl 键,在 Win 上,还可以用 Alt+<n> 打开相关窗口,在 Mac 上同样要使用 Command+<n>

除此以外,还可以在 Settings-Keymap 中,设置快捷键、输入快捷键查看对应的功能;

快捷键设置

  • alt+r:打开最近项目
  • ctrl+shift+o:打开项目

  • 自动补全快捷键,默认是 ctrl+空格,这个和一些中文输入法的切换快捷键冲突了,于是,我多设置了一个 ctrl+/
    技术图片

模板

系统内置的:postfix completion
自定义:live templete

  • psvm 生成 main 方法
  • sout 输出函数
    • soutp 打印函数的形参
    • soutv 打印变量值
    • xxx.out 打印变量 xxx 的值
  • fori 循环
    • iter 增强 for 循环(for each)
  • list.for
    • list.fori
    • list.forr 逆序遍历
  • ifn 条件判断
    • inn 不等于 null
  • prsf 私有的静态的常量

快捷键 ctrl+j 可以查看有哪些缩写字符。

更多关于模板的知识,点击官宣-live templates

参考:

常用快捷键

查看继承关系
重构 修改变量名和方法名
大小写切换,常量通常定义为都是大写
构造器

  • alt+↑/↓: 快速在方法间跳转 ★★
  • alt+p:打开Python控制台 ★★★
  • alt+enter万能键,不同场景有不同的表现方式,在还没import(install)模块名上使用会import(install)相对应的模块,在方法名上使用补注释,在测试中使用帮你补充断言代码……不管出错了不知道怎么办,知道怎么办想这么办时都按下这个快捷键,有惊喜,万能纠错键 ★★★
  • alt+f12 打开命令行终端(view->tool window)★★★;
  • ctrl+n 构造器、getter、setter 方法
  • 查看接口:
    • ctrl + h 查看类或接口的继承关系
    • ctrl + alt +B 查找接口的实现类
  • ctrl+e 打开最近文件 ★★★
  • ctrl+y 删除当前行 ★★★
  • ctrl+w 不断按下这个快捷键,选择代码块范围逐步扩大;★★★
  • ctrl+alt+←/→ 快速跳转光标刚刚所在行 ★★★
  • ctrl+alt+L,格式化代码
  • ctrl+space 万能提示键
  • shift+enter另起一行,光标在行内任意位置都能另起一行,且不破坏当行结构★★★
  • ctrl+alt+enter向上另起一行 ★★★
  • ctrl+F4:关闭当前页 ★★
  • crtl+q查询documentation
  • ctrl+鼠标点击 查看内置函数啥的
  • ctrl+D 复制当前行
  • ctrl+f12 File Structure,查看 class method field。
  • ctrl+Shift+F: 在整个项目中 或 指定目录里 进行全局搜索; ★★★
  • ctrl+shift+a:Find Action 快捷键,输入关键词,不会的就问它,超级赞的快捷键 ★★★
  • ctrl+shift+u:大小写转换,在 Edit->Toggle Case 中能看到选项
  • ctrl+shift+v:从最近的缓冲区粘贴
  • ctrl+shift+backspace 快速跳转到最后修改的地方★★★
  • ctrl + shift + v 在 Pycharm 中,访问历史粘贴板 ★★
  • ctrl+shift+ +/- :代码块折叠★
  • ctrl+alt+shit+j:多目标选择选择的词,或者用alt+鼠标点击也可以实现效果,Select All occurrences★★
  • 双击shift搜索一切,不管是IDE功能、文件、方法、变量,它都能搜索,使用频率很高的一个快捷键,!可以按最近使用过的文件名, 类名, 方法名等去搜索定位! 注意,这个搜索不支持搜索关键字的内容。★★★
  • shift+F6:文件重命名★★
  • shift+F2:跳转到上一个高亮错误 或 警告位置
  • 搜索
    • Ctrl+N:快速搜索类
    • Ctrl+Shift+N:快速搜索文件
    • Ctrl+Alt+Shift+N:快速搜索函数

参考:

alt+enter 快捷键的妙用

创建对象时,可以先 newalter+enter,IDEA 会自动补全,直接让你输入对象名:

技术图片

重构

  • Shift+F6 重命名
    所有的文件,类名,函数名,属性名都可以重命名,值得点赞的是,只要你使用 Shift+F6 重命名,所有使用过这个名称的地方都会跟着改变;

  • 函数的重构,Ctrl+F6 重构函数
    当你需要重构方法时,无论是增加参数,修改返回值,还是更改函数实现,只需要Ctrl+F6,就可以把所有用到此函数的地方一起重构

参考:

技术图片

调试技巧

技术图片

  1. step over F8 下一步,当前断点如果是一个方法,不会进入方法体内;
  2. step into F7 下一步,当前断点如果是一个方法,则进入方法体内;
  3. force step into Alt+Shift+F7 下一步,当前行如果是一个方法,强制进入方法体内;
  4. step out Shift+F8 跳出
  5. run to curser Alt+F9 运行到鼠标所在行,临时设置断点,有用
  6. resume program F9 恢复程序运行,运行到下一个断点处,是不是有点像 pdb 中的 c 快捷键;
  7. stop Command+F2 停止
  8. view breakpoints 查看所有断点,可以在运行时选择哪些断点暂停略过;
  9. mute breakpoints 所有断点失效/生效的切换;

条件断点

在循环里增加条件判断,具体操作:在断点处右击,在某个条件下,实施断点。

技术图片

查看表达式的值(可以查看已有变量的值):

技术图片

高效定位代码-无处不在的跳转

project之间跳转

ctrl+alt+左右方括号

技术图片

查看快捷键

ctrl+shift+a:搜搜快捷键

技术图片

查看最近文件

ctrl+e
可以在ctrl+shift+a:搜索reccent ...

快速跳转到最后修改的地方

ctrl+shift+backspace 快速跳转到最后修改的地方

技术图片

利用书签跳转

技术图片

技术图片

  • F11:添加、取消书签
  • ctrl+f11:添加、取消有标记的书签
  • ctrl+<n>:跳转到有标记的书签处

添加收藏 Favorites

alt+shift+f:add to favorities

技术图片

编辑区和文件区的跳转

alt+1进入文件区
esc:进入编辑区

精准搜索

类搜索

ctrl+n:快速搜索类

技术图片

文件搜索

快速打开指定的文件,方便★★★:
ctrl+shift+n

函数搜索-symbol

ctrl+shift+alt+n

列操作

多光标选中

  • 选中单词转大写

技术图片

  • 多光标
    技术图片

界面中的基本功能

如果没有如老师那样的窗口,可点击view——tool buttons打开

alt+<n>快捷键 ★★★

如下图圈出的数字 n,可以使用alt+<n>的方式快捷使用,替代鼠标操作。

注意,Mac 使用的是 command+<n>方式;

技术图片

打开收藏 ★★★

在一些调试的函数那里打断点,然后alt+7收藏中就会方便的查看;

TODO

在项目中使用# TODO,可以在Alt+6中看到哪些待开发的备注

调试技巧

设置程序环境变量

Run->Edit Configurations->Environment->Environment variables

技术图片

System.getenv("HOME_TEST");

必备插件

官网插键库:https://plugins.jetbrains.com/

插键说明:

  • Install JetBrains plugin:弹出IntelliJ IDEA 公司自行开发的插件仓库列表,供下载安装。
  • Browse repositories:弹出插键仓库中所有插键列表供下载安装。
  • Install plugin from disk:浏览本地的插键文件进行安装。

推荐插键:

  • BashSupport
  • Dash: ctrl+shift+h
  • Key Promoter X 快捷键提示
  • Statistic 代码统计
  • CheckStyle-IDEA 代码样式检查
  • Lombok plugin
  • FindBugs-IDEA 代码 Bug 检查
  • Mongo
  • Material Theme 主题插键
  • CamelCase 将不是驼峰格式的名称,快速转成驼峰格式,安装好后,选中要修改的名称,按快捷键 shift+alt+u
  • Rainbow Brackets 彩虹括号
  • Alibaba Java Coding Guidelines
  • Maven Helper:安装之后,直接打开pom文件,即可查看依赖数,还能自动分析是否存在jar包冲突
  • String Manipulation:字符串转换工具,安装好插件后,选中需要处理的内容后,按快捷键 Alt+m,即可弹出工具功能列表
  • AceJump:允许您快速将光标导航到编辑器中可见的任何位置,只需点击ctrl +;,然后输入一个你想要跳转到的字符,之后键入匹配的字符就跳转到你想要挑战的地方了
  • activate-power-mode:写代码的时候,就会附加一些狂拽炫酷屌炸天的效果

参考

FAQ

Q1: intellj Idea中给新建的项目导入jar包?

Q2: IDEA如何快速生成Get/Set方法?

Alt + Insert 组合,可唤出选择面板

Q3: 找不到提示

参考

以上是关于PyCharm/IDEA 使用技巧总结的主要内容,如果未能解决你的问题,请参考以下文章

2019 版 的pycharm idea 和 Webstorm 打开markdown文件时,IDE卡死的解决方法

python常用代码片段总结

BootStrap有用代码片段(持续总结)

解决Mac装上Jetbrain系列软件(Pycharm/Idea)无效导致软件启动报错

BootStrap实用代码片段(持续总结)

pycharm,idea,clion的配置