VS Code and Extension

本文最后更新于 2025年9月11日

下载文章

MobaXterm

如果你使用的是window系统,自带的cmd终端可能不支持图像传输和显示,你需要下面这个软件或者使用vscode

MobaXterm程序,这个结合了ssh和x server,是个很方便的应用(甚至有图形化的界面),功能很强大,现只说明如何显示出集群上的图

  • 下载MobaXterm,
    https://download.mobatek.net/2402024022512842/MobaXterm_Installer_v24.0.zip
    点击上面的链接,即可下载,按照提示进行安装

  • 登录nnu集群
    双击进入MobaXterm程序,点击star local terminal,你可以试试ssh -XY zhufeng@222.192.7.51能不能直接登录,按理来说也许能登上去,如果登不上去,可以通过修改.ssh/config 。

  • 修改ssh配置文件
    你可能会发现当前路径下没有.ssh/这个文件夹,你可以用下面的命令创建一个
    mkdir .ssh
    vi .ssh/config 创建并修改config文件,输入下面几行

1
2
3
4
Host 222.192.7.51
HostKeyAlgorithms +ssh-rsa
ForwardX11 yes
ForwardX11Trusted yes
  • 再次ssh -XY zhufeng@222.192.7.51 登录应该就能看到你的文件了,进行课上测试使用 graph->Draw() 时就能看到图啦!(这个应用甚至在下次能不用你输入密码自动登录)

X-server for Mac

首先下载xquartz,mac用这个链接https://www.xquartz.org/releases/XQuartz-2.8.5.html 下载并安装,打开xquartz应用,在自己的终端上用这个命令,你可以把这个命令放在.bashrc中而不用每次都需要使用这个命令
export DISPLAY=:0
之后用这个命令登录集群就能看图了(-XY 就是启用x服务器转发)
ssh -XY uername@server

Visual Studio Code

下载vscode,打开之后请调至dark模式,because light attracts bugs.
如果你英文苦手,请在扩展中搜索简体中文,安装重启之后就能显示中文了。当你使用特定的编程语言的时候,右下角会弹出窗口让你安装对应的插件,以方便你的阅读,当然你也可以直接搜索,比如C++去获取插件。

让我们说中文!其他推荐的插件

在vscode编辑latex

brew install mactex --cask brew下载mactex
打开vscode ,下载插件
LaTeX
参考专栏:https://zhuanlan.zhihu.com/p/654720622
如果要编译中文需要在开头加UTF8,下面是个例子

1
2
3
\documentclass{article}
\usepackage[UTF8]{ctex}
\begin{document}

在vscode登录lpc,lxplus等

下载这三个插件

image-20241015221344343

具体用法看Remote-SSH里面的说明(十分简单易操作),登录步骤如下

登录步骤

Tips: 如果你想登录lpc账号请参考这个设置一下.ssh/config的配置:https://uscms.org/uscms_at_work/physics/computing/getstarted/uaf.shtml

1
2
3
4
$ cd 
$ ls -a #如果你找到了.ssh文件夹就不用重新创建了
$ mkdir .ssh
$ vi .ssh/config

.ssh/config中添加下面的内容

1
2
3
4
5
Host cmslpc*.fnal.gov
GSSAPIAuthentication yes
GSSAPIDelegateCredentials yes
StrictHostKeyChecking no
UserKnownHostsFile /dev/null

下载OSX并复制到/etc/krb5.conf
这一步复制需要sudo命令,输入root密码之后才能复制到/etc中
要先在本地kinit username@FNAL.GOV之后,再在vscode里面登录lpc就可以了

可能导致连接失败的原因及解决方法:

  • 1.99版本更新后会导致ssh连接出现问题(从搜索的资料来看是老问题),手动回退到上个版本就好了
  • image-20250417001356380
  • 第一次连接的时候会在服务器的home文件夹下下载一个server,所以你需要保证你的home文件夹下有足够的空间

vscode-server

  • 连接lpc服务器的时候时常会出现问题,主要有以下几种解决方法:

    • 检查是否kinit username@FNAL.GOV,最好的方法是在终端中先登录到lpc上之后再用vscode登录
    • 删除.ssh/configHost cmslpc-el9.fnal.gov相关的几行,重新在Remote - SSH插件中新建远程(别把之前添加的Host cmslpc*.fnal.gov相关的删掉了)
    • 检查你的网络和风水
  • 重启和重试能解决90%的问题,rm -rf .vscode-server解决100%的问题!

在vscode里编译roofit程序

which root找到root的安装路径,用-l找到链接的路径,一般找到include文件夹就是有包含root所需的头文件了

1
2
3
4
5
% which root
/opt/homebrew/bin/root
% ls -l /opt/homebrew/bin/root
/opt/homebrew/bin/root -> ../Cellar/root/6.28.06/bin/root
% ls /opt/homebrew/Cellar/root/6.28.06/include/root

打开你的vscode里面一个工作文件夹下,有一个.vscode/c_cpp_properties.json的隐藏文件夹中的配置文件,将你的root路径放进去即可,注意上一行的逗号别忘记加

1
2
3
4
"includePath": [
"${workspaceFolder}/**",
"/opt/homebrew/Cellar/root/6.28.06/include/root"
],

GitHub Copilot 的免费申请及使用

参考这个链接进行教育优惠申请,如果你登录上GitHub遇到困难,请申请VPN

在中国做研究没有VPN还能做什么研究

当你被批准之后等待几天之后会给你发个邮件,你会发现批准按钮变紫了之后就能去申请Copilot了!

提交请求获得批准安装插件

你可以在ssh服务器中安装插件,这样你在远程作业的时候也能使用Copilot啦!

Copilot主要有两个功能,你可以像使用ChatGPT一样问这只青蛙(?)任何代码的问题,他还会根据你目前打开的窗口(或者你将文件拖给他)去提出建议;他另外一个强大的功能是根据上下文去猜想你想输入的代码,你只需要按下Tab键就能应用他的建议,或者你使用command + i去让他生成大段代码!

like ChatGPT代码填充

注:经过某次更新之后Copilot在本地的时候不能正常运行,但在集群中依旧能使用,因为众所周知的原因你需要设置代理服务器。
在vscode中按Command + Shift + p搜索open user settings json在花括号内添加"http.proxy": "http://127.0.0.1:7890","https.proxy": "http://127.0.0.1:7890",(注意逗号,这个地址和端口号会因为你的VPN不同而不同,如果没成功的话,你可能需要搜索一下解决办法)。这样设置后,本地在打开VPN之后就能使用Copilot了!但是这样登录集群之后会发现Copilot又不能使用了,因为这样设置会导致你集群也会走这个代理服务器,很显然集群是不会连通这个地址的。

你需要类似的在连接到集群之后在vscode中按Command + Shift + p搜索open remote settings json在花括号内添加"http.proxy": "", "https.proxy": ""意味着不去用代理服务器,这样就能保证本地和服务器都能使用啦!

注2:在不明原因的影响下,lpc集群的copilot chat无法登陆,是因为lpc证书会在家目录生成一个证书文件,copilot会读取这个证书并尝试使用他,这显然不是属于他的证书,所以你需要在remote settings json配置中添加"http.proxyStrictSSL": false, "http.systemCertificates": false,来忽略这个证书文件

注3: 在不明原因的影响下,lpc集群无法使用chat,参考这篇文章设置
在Vscode的settings中搜索Extension Kind,找到对应位置并添加

1
2
3
4
"remote.extensionKind": {
"GitHub.copilot": ["ui"],
"GitHub.copilot-chat": ["ui"],
}

注4: SignatureVerificationInternal: Signature verification failed with ‘UnknownError’ error.参考

1
"extensions.verifySignature": false

集群设置网络代理VPN

wget https://github.com/DustinWin/proxy-tools/releases/download/Clash-Premium/clashpremium-release-linux-amd64.tar.gz

mkdir clash; tar -zxvf clashpremium-release-linux-amd64.tar.gz -C clash/; cd clash; mv CrashCore clash

./clash -d .

zhufeng@node00:~/clash$./clash -d .

13:16:50 INF [MMDB] can’t find DB, start download path=/storage/home/zhufeng/clash/Country.mmdb

13:17:20 FTL [Config] initial configuration directory error=can’t initial MMDB: can’t download MMDB: Get “https://cdn.jsdelivr.net/gh/Dreamacro/maxmind-geoip@release/Country.mmdb“: dial tcp 93.46.8.90:443: i/o timeout path=/storage/home/zhufeng/clash

没办法自动下载,进入网址下载文件并上传https://cdn.jsdelivr.net/gh/Dreamacro/maxmind-geoip@release/Country.mmdb

zhufeng@node00:~/clash$ls

Country.mmdb cache.db clash config.yaml

zhufeng@node00:~/clash$./clash -d .

…SUCCESS MESSEAGE…

./clash -d . &

export http_proxy=http://127.0.0.1:7890;export https_proxy=https://127.0.0.1:7890


在VScode中使用overleaf

image-20250417000826131

下载这个插件,按照里面的说明GitHub Wiki,获取overleaf的cookie登陆就好了。在VScode里面使用的好处是能使用copilot辅助。

Zotero 和WebDAV服务器

Zotero | 群组Group功能的建立,加入及管理使用(十)_zotero新建群组-CSDN博客

数据与文件的同步 | Zotero 中文社区 (zotero-chinese.com)

【工程笔记】搭建Zotero同步服务器 - 知乎 (zhihu.com)

Zotero使用WebDav配置说明 - 简书 (jianshu.com)

others

latex做ppt