PhpStorm / WebStorm 中 TailwindCSS 没有自动提示

PhpStorm / WebStorm 新建项目中,有时候 TailwindCSS 自动提示没有出来。
原因如下:

  • 1、只支用 npm,你项目可能用 pnpm 了
  • 2、IDE 设置的 Node 解释器可能跟你项目使用的解释器不对应。

打开 “设置 > 语言和框架 > Node.js”,选择“Node 解释器”为当前项目使用的 node 解释器。有时候项目在 wsl 中开发,默认是本地的 node,会导致问题。

Git 设置 Socks5 代理

全局设置代理

1
2
git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'

取消全局代理

1
2
git config --global --unset http.proxy
git config --global --unset https.proxy

指定域名使用代理

1
2
3
4
5
#只对github.com
git config --global http.https://github.com.proxy socks5://127.0.0.1:1080

#取消代理
git config --global --unset http.https://github.com.proxy

在 .git/config 配置文件中设置代理

.git/config 文件中添加配置:

1
2
[https]
proxy = socks5://127.0.0.1:1080

ssh 代理连接(使用 ssh 访问 git 的解决方案)

前面设置的都是 https 代理, GitHub 都要求通过 ssh key 来提交,我们可以在 ~/.ssh/config 配置文件中设置使用代理连接 ssh

1
2
3
4
5
6
7
8
9
10
Host github.com
HostName github.com
User git
IdentityFile C:\Users\cmpan\.ssh\github
ProxyCommand "C:\Program Files\Git\mingw64\bin\connect" -S 127.0.0.1:1080 -a none %h %p
``````

```sh
# MacOS
ProxyCommand nc -v -x 127.0.0.1:1080 %h %p

终极方案

如果你有一台外网的 Linux 服务器,你可以用该服务器作为代理。

1
2
3
4
5
6
7
8
9
10
11
12
13
# 作为代理的ssh连接参数
Host pxy
HostName IP地址
Port 22
User pxy
IdentityFile ~/.ssh/pxy

# GitHub 连接参数
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/github_auth
ProxyCommand ssh pxy -W %h:%p # pxy 为代理ssh连接对应的 Host,在 Linux/Mac/Windows 上通用

Windows 11 配置 ssh-agent,秘钥登录自动填写key口令

ssh-agent 可以保存 ssh 秘钥的口令,让我们用 ssh 秘钥登录时,不需要输入秘钥的口令。

Windows 安装 git 后, 其带的 OpenSSH 被安装到 C:\Windows\System32\OpenSSH 文件夹,但是 ssh-agent 服务没有启动。

打开管理员权限的 Power Shell,输入命令:

1
2
3
4
# 把 `ssh-agent` 添加为开机自启动的系统服务
Set-Service ssh-agent -StartupType Automatic
# 启动 ssh-agent 服务
Start-Service ssh-agent

这样我们就把 ssh-agent 添加为开机自启动的系统服务了。

1
2
3
4
5
# 把私钥加入 ssh-agent
ssh-add .ssh\id_rsa

# 查看已加入 ssh-agent 的私钥
ssh-add -l

Windows 下设置 GitHub 2FA

1、安装认证器

在 Microsoft Store 搜索 OTPKEY Authenticator 并安装。

如果你用 iPhone,可以用 Microsoft Authenticator APP,安卓的很多 APP 要通过谷歌应用商店安装,国内太麻烦,不如直接用 Windows 的方便。

2、打开设置 2fa 二维码

电脑浏览器登录GitHub账号 -> “Settings” -> “Password and authentication” -> “Enable two-factor authentication” -> “Set up using an app” -> “Continue”,看到一个二维码。

3、设置 OTPKEY Authenticator

2fa

Windows 打开 OTPKEY Authenticator 程序,点击右上角的加号,然后再点右上角的二维码形状图标,把弹出窗口拖到上一步的二维码上,将自动填入到 Secret 输入框,再把前面两个输入框填完后点“ADD”,你将看到一串6位的数字。

把6位数字输入到 “Verify the code from the app” 输入框 -> “Download”,保存恢复代码 -> “I have saved my recovery codes” -> “Done”,设置完成。

4、2FA 登录

用账号密码登录 GitHub 后,Windows 打开 OTPKEY Authenticator 程序,看到6位数字,在浏览器输入该6位数字即可登录成功。

如果 OTPKEY Authenticator 打不开或不能生成验证码,可用前面下载的恢复吗登录。

配置 GitHub 通过 SSH 秘钥连接

1. 生成key

1
2
ssh-keygen -t ed25519 -f ~/.git/github_auth -C '备注,可用邮箱'

2. 添加秘钥到 ssh-agent

如果自定义了秘钥文件名,就需要把秘钥添加到 ssh-agent 中。

1
2
3
ssh-add ~/.ssh/github_auth
# 如果秘钥有口令,则加上 -K 参数,输入口令后,就不用每次连接都要输入 key 口令
ssh-add -K ~/.ssh/github_auth

这一步也可以通过 ssh config 文件来显式设置域名用指定的秘钥

1
2
3
4
5
6
7
vim ~/.ssh/config

# 加入下面的内容

Host github.com # ssh 主机名
HostName github.com # 连接域名或IP
IdentityFile ~/.ssh/github_auth # 私钥路径

3. 添加秘钥到 GitHub 账户

个人中心 Settings -> SSH and GPG keys -> New SSH Key

~/.ssh/github_auth.pub 内容粘贴到 Key 输入框。

4. 验证

用一下命令验证是否配置成功。

1
ssh -T git@github.com

注:

安装好 git 后,需要先设置全局用户名和邮箱才能使用。

1
2
3
git config --list
git config --global user.name "Your Name"
git config --global user.email "youremail@yourdomain.com"

PhpStorm / WebStorm WSL 前端开发环境配置

1、创建项目

WSL 中用 npm 创建 vue 项目。

(不用 pnpm 是因为:用 WSLpnpm 安装 node 包后,Windows 下的 PhpStorm 2023.2.1 识别不出,希望官方能早点解决。)

1
2
3
npm create vite@latest my-vue-app -- --template vue
cd my-vue-app
npm i

2、打开项目

wsl 前端开发

用 PhpStorm/WebStorm 打开 WSL 项目。

3、配置 Node.js 和 npm

wsl 前端开发

打开 Node.js 和 npm 配置,解释器选择 WSL 上的 Debian /usr/bin/node,包管理器选择 WSL 上的 npm

4、运行开发环境

wsl 前端开发

打开 PhpStorm 的终端窗口,终端自动进入 WSL 上的项目文件夹,输入 npm run dev 启动开发服务器,支持热加载。用浏览器打开 http://localhost:5173/ 浏览页面,编辑 src/components/HelloWorld.vue 文件,不需要刷新就能看到页面热更新。

解决 Windows 系统设置代理 Chrome 不能访问 Google 的问题

Chrome 不能单独设置代理而是用系统代理,据说 Windows 系统设置的代理是 socks4 代理,开系统代理后,用 Chrome 打不开 Google,Chrome 登录不了 Google 账号。

开系统设置代理后,虽然打不开 gooogle.com,但是可以打开这个 chrome 应用商店:

1
https://chrome.google.com/webstore/category/extensions

这样我们就可以先安装 Chrome 代理插件,再在 Chrome 彩礼插件中设置 socks 5 代理。

我装了 FoxyProxy Standard 代理,可行。

如果只需要上网,可以用 Firefox,它有设置代理的地方。
如果只是为了使用 Chrome 扩展,可以用 Edge,Edge 使用和 Chrome 一样的内核,可以从 Chrome 官网安装插件,也可以从 Edge 官网安装插件。

PhpStorm 性能调优

一、减少索引耗时

PHPStorm 不索引被排除的目录。在项目文件/文件夹上右键可排除、取消排除目录,更方便的是在 Settings > Directories 可查看和管理以标记的目录。

两个索引大户是 vendornode_modules 目录。

添加 php

vendor 目录排除,再到 Setting > PHP 把需要用到的包目录加入到 Include path

有时候把 Setting > PHP > Include path 的很多 vendor 中的目录去掉后,重启 PHPStorm 又自己加进去了。
解决:Setting > PHP > composer 设置的 作为库添加软件包 前的勾去掉。

node_modules

PHPStorm 默认已经把 node_modules 排除掉,在 Settings > Languages & Frameworks > JavaScript > Libraries 中自动把 package.json 中依赖的库加入到名为 ${project-name}/node_modules 的库。

我们可以用 pnpm 代替 npm 管理包来减少 IDE 的卡顿。pnpm 极大优化性能,速度更快、占空间更少。pnpm 管理的 node_modules 使用树状结构而不是扁平结构,IDE 打开 node_modules 目录不卡。

Laravel 排除目录

Laravel 项目还可以把 publicstorage 目录排除。

二、加大允许使用内存

可在 help > 更改内存设置 修改最大堆大小,也可在 help > Edit Custom VM Options 中设置如 -Xmx2048m

三、可去掉一些平时用不到的插件

四、不建议的优化

禁掉一些很好用的功能达到提速的目的是来搞笑的。如有人建议禁掉 Language injection 插件,完全禁掉这个插件是不可取的,可以到 Settings > Editor > Language Injections 把一些用不到的插入语言去掉。

在 Mac 上用一个命令使用 SSH 做代理科学上网

作为一个开发人员,翻墙是必备本领。
一些常用的参考代码和开发文档官方网站,要么很慢,要么被墙,你懂的,这需要科学上网。
你只要有一个墙外的 Linux 服务器,就能在 Mac 上用一个命令使用 ssh 做代理科学上网。

创建 SSH 秘钥

先创建名称为 pxy_rsa 的本地秘钥(你也可以使用已有的秘钥,怎样创建 ssh 秘钥如果不会自行网上搜索)。

服务器端添加账号

服务器端 ssh 禁用密码登录,配置 key 登录,
添加用户名为 pxy 的账号,只允许作为代理,不允许做其它操作。

使用 root 权限操作,执行以下命令

阅读更多

brew 无法执行命令,总出现 Downloading https://.../api/formula.json

每次 brew 命令都出现 Downloading https://formulae.brew.sh/api/formula.json,而且特别慢,总是超时,翻墙了也不管用…
brew 源已经设为阿里云的了,还出现这东西。原因是 brew 4 默认从 HOMEBREW_API_DOMAIN 安装应,每次都下载 formula.json

有两个方式能解决这个问题。

方式1:把 HOMEBREW_API_DOMAIN 设置到国内源,这样每次虽然都会下载 formula.json,但是就几秒的事。

1
2
echo 'export HOMEBREW_API_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles/api' >> ~/.bash_profile
source ~/.zshrc

方式2:禁止从 API 安装应用,不会每次执行命令就跑出这东西,但要手动升级应用。

export HOMEBREW_NO_INSTALL_FROM_API=1 加入 ~/.bash_profile

1
2
echo 'export HOMEBREW_NO_INSTALL_FROM_API=1' >> ~/.bash_profile
source ~/.zshrc