公告
markdown
syntaxGit常用命令 /posts/notes/git-usage/ Git 是一个分布式版本控制系统,用于跟踪文件和代码的更改。经常用来管理代码,方便查阅,版本控制,合作开发,代码审阅。 记录经常使用到git命令,以便查用. <!--more--> 配置相关 ```bash 设置默认主分支名称 为main git config --global init.defaultBranch main 配置 http.sslVerify 为 false, 如下: git config --global http.sslVerify false ``` 快速上手 ``` bash 快速开始命令 git init git add README.md git commit -m "first commit" git branch -M main git remote add origin https://github.com/geekswg/test.git git push -u origin main ``` 子模块相关 > Git 子模块是 Git 仓库中嵌套的另一个 Git 仓库,它允许你将一个 Git 仓库作为另一个 Git 仓库的一个子目录,方便管理多个子项目的代码。 ```bash 初始化git ,使用git子模块 添加主题 git init 添加子模块 git submodule add https://github.com/hugo-fixit/FixIt.git themes/FixIt 更新同步子模块 git submodule update --remote --merge 自动克隆子模块 在执行 git clone 时加上 --recursive 参数 git clone --recursive https://github.com/example/example.git 如果克隆的项目包含子模块,使用下面方法更新下载子模块 git submodule update --init Git 子模块相关的命令: git submodule add <repository> <path>:将一个 Git 仓库添加为子模块。 git submodule init:初始化子模块,将 .gitmodules 配置文件中列出的子模块拉取到本地。 git submodule update:更新子模块,将子模块更新到最新的 commit。 git submodule foreach <command>:对每个子模块执行命令。 git submodule status:查看子模块的状态,包括子模块的 commit ID 和是否有未提交的修改。 git submodule sync:同步子模块的 URL 和路径。 git submodule update --remote:更新子模块到最新的远程分支。 git submodule deinit <submodule>:从父仓库中删除子模块。 ``` > 注意,对于子模块的操作需要在父仓库中进行。在进行子模块的操作时,需要切换到子模块所在的目录中进行。 由ChatGPT生成 以下是一些常用的 Git 命令: 初始化仓库:创建一个新的 Git 仓库或将现有项目初始化为 Git 仓库。 ```bash git init ``` 克隆仓库:将远程仓库克隆到本地。 ``` git clone <repository_url> ``` 添加文件:将文件添加到暂存区。 ``` git add <file_name> git add . 将所有文件添加到暂存区 ``` 提交更改:将暂存区中的更改提交到本地仓库。 ``` git commit -m "Commit message" ``` 查看状态:查看文件的更改状态。 ``` git status ``` 查看日志:查看提交历史。 ``` git log ``` 检出分支:切换到指定分支。 ``` git checkout <branch_name> ``` 创建分支:创建一个新的分支。 ``` git branch <new_branch_name> ``` 合并分支:将指定分支的更改合并到当前分支。 ``` git merge <source_branch> ``` 关于Docker /posts/ai/aigen/cursor-docker/ > 这一片关于Docker的文章,由AI工具Cursor写作 作者:Cursor`Ctrl + K`: 使用md写一篇1万字的关于docker的博文 <!--more--> Docker: 从入门到精通 什么是 Docker? Docker 是一个开源的容器化平台,可以让开发者将应用程序和依赖项打包到一个可移植的容器中,然后在任何地方运行。 Docker 的优势 Docker 的优势主要有以下几点: - **轻量级**:Docker 容器非常轻量级,启动速度快,占用资源少。 - **可移植性**:Docker 容器可以在任何地方运行,无需担心环境差异。 - **可扩展性**:Docker 容器可以很容易地进行扩展,支持水平和垂直扩展。 - **易于管理**:Docker 容器可以很容易地进行管理,支持自动化部署和运维。 Docker 的基本概念 在使用 Docker 之前,需要了解一些基本概念: - **镜像(Image)**:Docker 镜像是一个只读的模板,可以用来创建 Docker 容器。镜像可以包含操作系统、应用程序和依赖项等。 - **容器(Container)**:Docker 容器是从 Docker 镜像创建的运行实例。容器可以运行、停止、删除和暂停等。 - **仓库(Repository)**:Docker 仓库是用来存储 Docker 镜像的地方。Docker 官方提供了 Docker Hub 仓库,也可以使用私有仓库。 Docker 的安装 在安装 Docker 之前,需要先安装 Docker 的依赖项: ```bash sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release ``` 然后,添加 Docker 的 GPG 密钥: ```bash curl -fsSL https://download.docker.com sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu (lsb_release -cs) stable" sudo apt-get update ``` 使命召唤19-战区2-地图 /posts/games/cod19-wz2/ !wz2> 在DMZ模式中做任务时经常找不到点位。 21号楼 !21-room 马兹拉 垃圾箱 !垃圾箱!垃圾箱 扎克瓦水电站 !扎克瓦水电站 扎克瓦水电站 !塔拉克村 沙里木小道 !沙里木小道 沙里夫海湾 !沙里夫海湾 萨伊德市 !萨伊德市!哈飞德港口!阿尔巴格城堡 萨曼墓园 !萨曼墓园 查亚观察站 !查亚观察站!洛翰炼油厂!萨夫瓦采石场!麦立克机场 马兹拉市 !马兹拉市!萨瓦村!萨提克岩洞 玛韦泽沼泽 !玛韦泽沼泽 海狮岛 > 海狮岛地图点位 21号楼 !21-room 关于ChatGPT /posts/ai/aigen/md-writeby-cursor/ !!! quote "申明" 这一片关于ChatGPT的文章,由AI工具Cursor写作 作者:Cursor<!--more--> ChatGPT ChatGPT是一个基于GPT-2的聊天机器人,它可以与用户进行自然语言交互。ChatGPT使用了GPT-2的预训练模型,可以生成高质量的自然语言文本,从而实现了智能聊天的功能。 功能 ChatGPT可以回答用户的问题、提供建议、进行闲聊等。用户可以通过输入文本与ChatGPT进行交互,ChatGPT会根据用户的输入生成相应的回复。ChatGPT还可以进行多轮对话,从而更好地理解用户的意图和需求。 使用 用户可以通过访问ChatGPT的网站或者使用ChatGPT的API进行交互。在网站上,用户可以直接输入文本与ChatGPT进行交互;在API上,用户可以通过发送HTTP请求与ChatGPT进行交互。ChatGPT的API支持多种编程语言,包括Python、Java、JavaScript等。 优势 相比于传统的聊天机器人,ChatGPT具有以下优势: - 生成的回复更加自然、流畅,更接近人类的表达方式; - 可以进行多轮对话,更好地理解用户的意图和需求; - 可以根据用户的输入进行个性化的回复,从而提高用户的满意度。 局限性 虽然ChatGPT具有很多优势,但它也存在一些局限性: - 由于使用了预训练模型,ChatGPT的回复可能会受到模型训练数据的影响,从而出现一些不合理的回复; - ChatGPT无法理解一些复杂的语言结构,例如双关语、歧义等; - ChatGPT无法进行真正的理解和推理,只能生成基于模型的回复。虽然ChatGPT存在一些局限性,但它仍然是一种非常有用的工具,可以帮助人们更好地进行自然语言交互。随着人工智能技术的不断发展,ChatGPT的性能也将不断提高,未来它有望成为人们进行自然语言交互的首选工具之一。ChatGPT的应用场景非常广泛,可以用于客服、教育、娱乐等领域。例如,在客服领域,ChatGPT可以代替人工客服进行自然语言交互,从而提高客户服务的效率和质量;在教育领域,ChatGPT可以作为智能辅导工具,帮助学生进行学习和答疑;在娱乐领域,ChatGPT可以作为智能聊天伴侣,陪伴用户度过闲暇时光。随着ChatGPT技术的不断发展,它的应用场景也将越来越广泛。ChatGPT是一种非常有用的工具,可以帮助人们更好地进行自然语言交互。它具有很多优势,例如生成的回复更加自然、流畅,可以进行多轮对话,可以根据用户的输入进行个性化的回复,从而提高用户的满意度。虽然ChatGPT存在一些局限性,但随着人工智能技术的不断发展,它的性能也将不断提高,未来它有望成为人们进行自然语言交互的首选工具之一。ChatGPT的应用场景非常广泛,可以用于客服、教育、娱乐等领域。一次性写完,让我们期待ChatGPT的未来发展。ChatGPT的未来发展将会受到人工智能技术的不断发展和应用场景的不断扩大的影响。随着人工智能技术的不断发展,ChatGPT的性能也将不断提高,例如可以更好地理解复杂的语言结构、进行真正的理解和推理等。同时,ChatGPT的应用场景也将不断扩大,例如可以用于医疗、金融、法律等领域。在医疗领域,ChatGPT可以作为智能诊断工具,帮助医生进行疾病诊断和治疗方案的制定;在金融领域,ChatGPT可以作为智能投资顾问,帮助投资者进行投资决策;在法律领域,ChatGPT可以作为智能法律顾问,帮助律师进行法律咨询和案件分析。随着ChatGPT技术的不断发展和应用场景的不断扩大,它将成为人们进行自然语言交互的重要工具之一,为人们的生活和工作带来更多的便利和效率。 Share Cursor /posts/share/share-cursor/ !Cursor Home>Cursor > 最重要的是这个是 开源免费,国内直接访问的AI助手小工具. > 开源地址 https://github.com/getcursor/cursor Build Software. Fast. Write, edit, and chat about your code with a pful AI 食用方法 1. 快捷键:`Ctrl + K` 输入你的描述,自然语言对话,他就能根据你的描述要求开始写代码了,如果实现代码比较长的话,他可能不会一次性写完代码,写道一半停止了,你继续按快捷键告诉他继续写就可以了。 2. 快捷键 `Ctrl + L` 可以和他自然聊天,比如问题某段代码什么意思,或者问他写的代码如何运行,经过测试,他的回答都十分的智能,而且上下文理解的非常顺畅,就像和一个助理在正常聊天。 食用预览 * `Ctrl + K` 让他帮你写代码 !Cursor Home!Cursor Home* `Ctrl + L` 帮助你运行程序,有什么问题都可以直接问他,比如让如何安装依赖,翻译代码,解释代码的含义。 !Cursor Home> 总结下来,使用虽然比较简单,但是还是需要有一定的编程思维和判断能力,因为在测试的时候,使用pthon代码的时候用到了一个库,调用库的时候居然自己创造了一个方法。我在调试的运行他帮我写的代码时。居然报错了,说不存在这个方法,我去搜下这个库,确实没发现他使用的这个方法!让我哭笑不得,一方面说明这个代码应该是AI自己借鉴别人代码,如何根据我的需求,他自己编写的。2.说明这个程序呀有时候会胡诌一些不存在的东西,或者自己创造一些,但是肯定有问题,需要自己判断去修改。 整体使用下来,效果令人吃惊,值得尝试一下。官方地址 Share-分享TVBox类TV盒子软件 /posts/share-tvbox/idnex/ !!! warning 申明 所有资源来自互联网,视频源归原作者,请勿商业用途,否则后果自负。 note abstract info tip success question warning failure danger bug example quote 资源下载饭太硬导航这里有TVBox类壳子资源网站 > 说明:TVBox 影视壳子,只是给空壳软件,不提供视频播放源的。 毕竟开发者要规避法律风险的,只提供工具。 这就使这个软件下载过后,安装后并不能直接使用,而要自己配置视频源后才能正常的播放点播和直播内容。该软件十分强大,也非常的好用。 请大家低调使用,毕竟灰色软件! 使用方法 > 安装好软件后,进入软件,设置,配置地址,选择路线,选择播放源,就能选择自己喜欢的视频和电视直播了。 * 配置地址 * 选择线路 * 远程配置推送 TVbox 接口视频源分享 * 饭太硬 `http://饭太硬.ga/tv` * 肥猫接口 `http://我不是.肥猫.love:63/接口禁止贩卖` * FongMI https://ghproxy.com/raw.githubusercontent.com/FongMi/CatVodSpider/main/json/config.json 相关网站 * 饭太硬 http://xn--sss604efuw.ga/ `https://饭太硬.ga` * 肥猫 https://xn--z7x900a.love/ `https://肥猫.love` 手机版 > EasyBox-1.0.8 不带视频源,自行添加. > 链接:微云网盘下载地址密码:ssv4z9 New Bing 国内正常访问方法 /posts/ai/new-bing-visit/ !!! quote 记录国内正常网络环境直接访问New Bing的方法。 之前的插件方法已经失效 截止目前以下方法可正常访问,使用SwitchHosts插件 note abstract info tip success question warning failure danger bug example quote 前言 最近百度文心一言发布了,还在内测申请,申请地址,不知道个人需要多长时间可以通过申请。 最近的AI搜索引擎比较火,我之前申请的new bing体验了,还是比较厉害的,现在又升级了,对话限制提高到了15次对了。不过国内的网络不能直接访问bing.com/new,这一点比较难受,今天在晚上看到一个工具可以解决,国内直接访问new bing的方法。 !!! tip 前提你已经通过new bing 的waitlist,不然你还是用不上new bing哟! <!--more--> 方法 > 使用SwitchHostsSwitchHosts 是一个管理、切换多个 hosts 方案的工具。 它是一个免费开源软件,支持 Windows、Mac、Linux 三大桌面操作系统。 * 快速切换 Hosts 方案 * Hosts 语法高亮 * 支持从网络加载远程 Hosts 配置 * 可从系统菜单栏图标快速切换 Hosts !!! info> 下载后 注意使用 **管理员身份运行** 新增-本地-确定,然后在右边输入以下配置hosts方案 操作如下图 !配置```hosts Windows 推荐管理工具:SwitchHosts 新必应主页:https://www.bing.com/new 说明1:如果失效,请在编辑里点击刷新,查看 Hosts 配置否有更新 说明2:如果配置获取失败,网址打不开,请连接手机热点尝试 说明3:以下Hosts配置内容可以自行复制使用,本地址仅为方便导入和后续更新 必应主页相关 20.196.210.19 bing.com 20.196.210.19 www.bing.com 20.196.210.19 r.bing.com 20.196.210.19 cn.bing.com Edge浏览器侧边栏相关 20.196.210.19 edgeservices.bing.com 20.196.210.19 sydney.bing.com ``` 预览 接下来就可以正常在浏览器输入 https://www.bing.com/new 就能愉快的和new bing玩耍了。 !new bing Debian Theme Whitesur /posts/linux/debian-theme-whitesur/ !!! note 通过安装Whitesur主题,让你的linux看起来非常炫酷。 <!--more--> whiteSur 主题 主题下载地址WhiteSur-gtk-theme 预览效果 !whiteSur主题 安装主题 解压后在终端中执行执行`./install`即可。 安装icons 下载地址 :https://github.com/vinceliuice/WhiteSur-icon-theme 上面的地址下载后 图标显示不全,使用下面的地址即可解决问题。 下载的时候下载:https://github.com/vinceliuice/WhiteSur-icon-theme/archive/refs/tags/2022-08-30.tar.gz 安装方法,解压后 `./install`,非常简单。 !whiteSur图标 安装plank dock栏 安装Plank plank的安装非常简单: ```bash sudo apt install plank ``` > plank主题地址 地址1:https://www.gnome-look.org/p/1399398/ github地址:下载地址> 使用方法: 解压后,在终端打开,复制主题文件夹到plank主题目录。 ```bash cp 'Big Sur Dark'/ -r ~/.local/share/plank/themes ``` 启动plank: `plank &` linux添加自启动 为了每次启动能够正常使用plank,将plank添加到 linux自启动程序中。 开机启动: 1、跳转到对应位置(/etc/init.d/) ```bash cd /etc/init.d/ ``` 2、创建sh脚本(文本名.sh)(如果不存在会自动创建) ```bash sudo gedite /etc/init.d/my-starter.sh ``` 3、在sh文件中输入一下内容 ```bash !/bin/sh BEGIN INIT INFO Provides:Leanote Required-Start: network remote_fs local_fs Required-Stop: network remote_fs local_fs Default-Start: 2 3 4 5 Default-Stop: 0 1 6 Short-Description: Leanote Description: Leanote start END INIT INFO 开机启动 plank & nohup plank & exit 0 ``` Debian11 Learn 相关命令 /posts/linux/debian11-learn/ !!! note 刚刚入手debian11,记录使用中遇到的一些常用命令。 <!--more--> 配置中文环境 首先我们添加对中文的支持: `sudo apt-get install locales` 然后然后配置 locales 软件包: `sudo dpkg-reconfigure locales` 安装中文输入法 安装scim输入法 ```bash apt-get install scim apt-get install scim-chinese apt-get install scim-pinyin ``` 安装VScode >Visual Studio Code是由微软Microsoft开发,功能强大的开源代码编辑器。它具有内置的调试支持。 嵌入式Git控件,语法高亮显示,代码自动补全,集成终端,代码重构和代码片段。 本教程介绍如何在Debian 11安装vscode编辑器。在继续本教程之前,我们假设你当前登录系统的用户是具有sudo权限的用户。 要在Debian 11安装vscode,请完成这些步骤。首先apt命令更新软件包索引并安装导入微软GPG密钥的依赖软件。 安装脚本如下: ```bash !/bin/bash 在你的Debian linux操作系统上通过以下步骤来完成 VS Code 的安装。 01、首先输入以下内容来更新软件包索引并安装依赖项: sudo apt update sudo apt install software-properties-common apt-transport-https curl 02、使用以下curl命令导入Microsoft GPG密钥: curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - 将Visual Studio代码存储库添加到你的系统: sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" 03、添加存储库后,安装最新版本的Visual Studio代码: sudo apt update sudo apt install code echo "instsall is finish" 完 ``` 安装Hugo ```bash 通过运行以下命令确保您的系统是最新的 apt 终端中的命令: sudo apt update sudo apt upgrade 默认情况下,Hugo 在 Debian 11 基础存储库中可用。 现在我们使用以下命令安装`Hugo` sudo apt install hugo 查看hugo 版本号以验证是否安装成功: hugo version ``` Debian从稳定版切换到testing版 /posts/linux/debian-testing/ !!! note debian升级到testing – 让debian系统永远保持最新的秘诀 <!--more--> debian的版本分为:unstable(不稳定版)、testing(测试版)、stable(稳定版),稳定版稳定性非常强悍,曾经使用过ubuntu,几乎每个星期都要重装系统,自从使用了debian系统,再不用重装系统了。然而稳定版的软件是比较旧的,为了追求稳定,牺牲了一些新的特性支持,比如:最新的debian 8.6 stable版本,linux内核还在3.16版本上,要知道,截止到2016-12-26号,Linux kernel已经更新到4.10了,稳定版是4.9 方法一:添加debian testing版本源 > 如果安装的是debian stable版,只要喜欢,任何时间都可以将其变成 testing版本,方法很简单,用喜欢的编辑器打开:`/etc/apt/source.list` 源文件,用号注释掉之前的源,加入下面的源文件,该源长期有效,因为每个debian版本,都会有testing版本。 ``` --------testing 源 deb http://security.debian.org/ testing/updates main contrib deb-src http://security.debian.org/ testing/updates main contrib deb-src http://ftp.debian.org/debian/ testing-updates main contrib deb http://ftp.debian.org/debian/ testing-updates main contrib 163 deb http://mirrors.163.com/debian/ testing main non-free contrib deb http://mirrors.163.com/debian/ testing-updates main non-free contrib deb-src http://mirrors.163.com/debian/ testing main non-free contrib deb-src http://mirrors.163.com/debian/ testing-updates main non-free contrib deb http://mirrors.163.com/debian-security/ testing/updates main non-free contrib deb-src http://mirrors.163.com/debian-security/ testing/updates main non-free contrib 中国官方源镜像 deb http://mirrors.ustc.edu.cn/debian/ testing main contrib non-free deb-src http://mirrors.ustc.edu.cn/debian/ testing main contrib non-free deb http://mirrors.ustc.edu.cn/debian/ testing-updates main contrib non-free deb-src http://mirrors.ustc.edu.cn/debian/ testing-updates main contrib non-free deb http://mirrors.ustc.edu.cn/debian-security/ testing/updates main contrib non-free deb-src http://mirrors.ustc.edu.cn/debian-security/ testing/updates main contrib non-free ``` 保存源文件,终端下执行: ``` sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade ``` 方法二:直接使用testing镜像安装 镜像下载地址:http://cdimage.debian.org/cdimage/weekly-builds/amd64/iso-dvd/ 分享VSCode插件 /posts/share/share-vscode-plugins/ !!! warning 所有分享资源来自互联网,如有侵权请告知,会立即删除 note abstract info tip success question warning failure danger bug example quote > 分享 VSCode 插件,提升编码效率,插件侠篇。 !!! note 小技巧:vscode插件栏目中,热门标签类目下的插件都是比较优秀和好用的插件,不知道用什么插件时去哪里可以发现很多宝藏的插件!推荐里面也能找到你想要的,微软这方面做的还是非常不错的。 <!--more--> AI类-辅助写代码工具 tools-工具类 git功能增强 > vscode自带的git插件只能提交和更新代码,不能查看和查看远程的分支历史提交记录。 ShareAnything-分享一切 /posts/share/share/ !!! warning 申明 所有分享资源来自互联网,如有侵权请告知,会立即删除 > 分享 音乐、软件、网站等一切我觉得好玩或者有用的资源 !!! info 提示 软件都是我用过的,大家可以放心食用,不给任何产品推广。 Do no evil ! <!--more--> music-favor-收藏 > 个人喜欢的音乐列表 Free-Software-软件 !!! note 分享一些用过就离不开的开源软件或者免费的软件,免费且实用。 注意:并不是所有的开源软件都是免费的,留意开源协议即可。 apps-安卓软件 > android 手机软件分享 website 👉点击这里查看 other free > v2rayN免费订阅地址: 1. https://raw.githubusercontent.com/aiboboxx/v2rayfree/main/v2 2. https://raw.fastgit.org/Pawdroid/Free-servers/main/sub 3. https://kxswa.tk/v2ray 其他内容 日常笔记 /posts/notes/daily-notes/ !!! note 记录日常笔记和分享一些有趣的发现,随手记录一些流水账,好记性不如烂笔头。 倒叙记录。 <!--more--> title ⏱️2023/03/00 00:00 itab-新标签页浏览器插件 iTab 新标签页iTab新标签页,小组件,起始页,标签页,日历,股票,浏览器扩展 免费无广告的组件式浏览器桌面 ⏱️2023/03/07 13:48 >传送地址支持大部分主流浏览器,作者更新比较及时,经常推出一些好玩的组件。 uTools工具箱 > 一款PC端的工具箱合计,类似在线工具网站的类似功能聚合。使用起来比较方便,可以极大提升效率。 ⏱️2023/03/05 22:16 新一代效率工具平台,自由组合插件应用,打造专属你的趁手工具集uTools官网 git clone报错 ⏱️2023/03/04 00:16 !!! bug Cloning into 'blogFixit'... fatal: unable to access 'https://github.com/geekswg/blogFixit.git/': SSL certificate problem: unable to get local issuer certificate > 解决方法: 打开git命令操作框,配置http.sslVerify为false,如下: `git config --global http.sslVerify false` !!! tip 2023-03-05 01:41:52.782info] Author identity unknown *** Please tell me who you are. Run git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. 发现一个宝藏网站 ⏱️2023/03/02 00:16 > 两个个有趣的在线工具网站,很有意思,虽然是英文的。 在线工具网站: 1. http://patorjk.com/blog/software/ 2. https://id.tool.lu notion超好用的笔记软件 > Notion 是一款国外的知识管理软件,以高颜值、无广告、简洁的系统界面著称。它将笔记、知识库、任务待办(to-do list)、日历、项目管理等功能集于一身。你可以在桌面或网页上使用 Notion。 ⏱️2023/03/01 21:11 软件地址 https://www.notion.so/ 免费加速器-AK加速器 始终相信没有永远免费的加速器,永远有免费的加速器。 !!! bug 别用NN加速器,有毒,流氓软件!!! ⏱️2023/02/28 15:16 > AK加速器 每天分数段免费,目前免费时间每天【00:00 ~ 14:00】 亲测目前可用的免费加速器,感觉比较良心了,传送门 [AK加速器!AK加速器 Github网页小技巧 > github 网页快捷键 `.` 和 `?` >Github和VSCode在梦幻线联动,非常惊喜。 `.`快捷键 > 快速在vscode-for-web中打开当前仓库代码 !!! tip 在 `github`的仓库地址页面 按下键盘上的**.**按键会自动跳转到在线vscode编辑上,可直接编辑你的仓库代码。 直呼niubility,非常方便快捷,赶紧用起来吧。 !github-vscode 在线联动!!! question 要有 **科学上网的环境** ,不然vscode 显示有点问题,不能浏览仓库内容。 `/`快捷键快速搜索 在github web页面上,按快捷键`/`可快速在github搜索。 notes1 /posts/notes/notes1/ !!! note note abstract info tip success question warning failure danger bug example quote 这里使用MD语法编写你的文章 <!--more--> notes2 /posts/notes/notes2/ !!! note note abstract info tip success question warning failure danger bug example quote 这里使用MD语法编写你的文章 <!--more--> New Bing 申请教程 /posts/ai/new-bing/ 最近除了有很红的ChatGPT AI 聊天机器人之外,还有很多人跃跃欲试新版Bing(New Bing),因为微软将新版Bing 结合了比ChatGPT 更强大的新一代OpenAI 语言模型,不仅能询问复杂问题、提供建议与解决方法,Bing 也会查看网路搜寻结果,迅速为我们提供摘要。 记录申请过程中遇到各种问题以及解决办法。 <!--more--> 申请New Bing > 申请地址 : https://bing.com/new 由于某些原因,国内无法直接访问 new bing 。 1. 通过科学上网方式直接访问 2. 使用 HeaderEditor 插件 下载链接:点击下载启用插件 配置插件 !配置截图配置参数 ``` // 匹配规则 ^http(s?)://(.*).bing\.com/(.*) // 头名称 x-forwarded-for // 头内容 8.8.8.8 或者 4.2.2.2 ``` 老账户无法加入waitlist !!! failure "错误提示" 老的微软账户是不是提示 !new bing 申请waitlist错误1. 使用科学上网地址非国内地址,申请一个新的微软账户加入 new bingwaitlist2. 继续使用老账户申请 > 如果在申请 new bing waitlist 等候名单遇到 错误提示信息 !!! bug "错误提示" >}} 1. 出错了,请重试 2. Something went wrong, please try again later. 原因就是 Microsoft rewards 已经在国内使用过了,账户被禁用了。 解决方案如下: 1. 退出Bing Rewards计划: https://rewards.bing.com/optout ,请注意退出计划会清除积分 2. 重新加入Bing Rewards计划: https://rewards.bing.com 3. 清除cookie后,再次申请加入新版必应( https://www.bing.com/new ),即可正常加入候补列表 New Bing 上手体验 > 使用体验非常好,尤其是上下文语境做的让人非常舒服,总之是一个合格而且优秀的助手 推荐下载Edge-Dev体验效果非常好 !Edge-Dev new bing 使用预览> 网页中使用bing-chat https://www.bing.com/search?q=Bing+AI&showconv=1&FORM=hpcodx !web new bing 使用预览 (Hu)go Template Primer /posts/hugo/goisforlovers/ Hugo uses the excellentGo][] [html/template][gohtmltemplate] library for its template engine. It is an extremely lightweight engine that provides a very small amount of logic. In our experience that it is just the right amount of logic to be able to create a good static website. If you have used other template systems from different languages or frameworks you will find a lot of similarities in Go templates. This document is a brief primer on using Go templates. The [Go docs][gohtmltemplate] provide more details. Introduction to Go Templates Go templates provide an extremely simple template language. It adheres to the belief that only the most basic of logic belongs in the template or view layer. One consequence of this simplicity is that Go templates parse very quickly. A unique characteristic of Go templates is they are content aware. Variables and content will be sanitized depending on the context of where they are used. More details can be found in the [Go docs][gohtmltemplate]. Basic Syntax Golang templates are HTML files with the addition of variables and functions. **Go variables and functions are accessible within ** Accessing a predefined variable "foo": **Parameters are separated using spaces** Calling the add function with input of 1, 2: **Methods and fields are accessed via dot notation** Accessing the Page Parameter "bar" **Parentheses can be used to group items together** Caption Variables Each Go template has a struct (object) made available to it. In hugo each template is passed either a page or a node struct depending on which type of page you are rendering. More details are available on the [variablespage. A variable is accessed by referencing the variable name. <title></title> Variables can also be defined and referenced. Functions Go template ship with a few functions which provide basic functionality. The Go template system also provides a mechanism for applications to extend the available functions with their own.Hugo template functionsprovide some additional functionality we believe are useful for building websites. Functions are called by using their name followed by the required parameters separated by spaces. Template functions cannot be added without recompiling hugo. **Example:** Includes When including another template you will pass to it the data it will be able to access. To pass along the current context please remember to include a trailing dot. The templates location will always be starting at the /layout/ directory within Hugo. **Example:** Logic Go templates provide the most basic iteration and conditional logic. Iteration Just like in Go, the Go templates make heavy use of range to iterate over a map, array or slice. The following are different examples of how to use range. **Example 1: Using Context** **Example 2: Declaring value variable name** **Example 2: Declaring key and value variable name** Conditionals If, else, with, or, & and provide the framework for handling conditional logic in Go Templates. Like range, each statement is closed with `end`. Go Templates treat the following values as false: * false * 0 * any array, slice, map, or string of length zero **Example 1: If** <h4></h4> **Example 2: If -> Else** **Example 3: And & Or** **Example 4: With** An alternative way of writing "if" and then referencing the same value is to use "with" instead. With rebinds the context `.` within its scope, and skips the block if the variable is absent. The first example above could be simplified as: <h4></h4> **Example 5: If -> Else If** Pipes One of the most powerful components of Go templates is the ability to stack actions one after another. This is done by using pipes. Borrowed from unix pipes, the concept is simple, each pipeline's output becomes the input of the following pipe. Because of the very simple syntax of Go templates, the pipe is essential to being able to chain together function calls. One limitation of the pipes is that they only can work with a single value and that value becomes the last parameter of the next pipeline. A few simple examples should help convey how to use the pipe. **Example 1 :** Same is the same as Same It does look odd to place the if at the end, but it does provide a good illustration of how to use the pipes. **Example 2 :** Access the page parameter called "disqus_url" and escape the HTML. **Example 3 :** Stuff Here Could be rewritten as Stuff Here Context (aka. the dot) The most easily overlooked concept to understand about Go templates is that always refers to the current context. In the top level of your template this will be the data set made available to it. Inside of a iteration it will have the value of the current item. When inside of a loop the context has changed. . will no longer refer to the data available to the entire page. If you need to access this from within the loop you will likely want to set it to a variable instead of depending on the context. **Example:** <li> <a href="/tags/"></a> - </li> Notice how once we have entered the loop the value of has changed. We have defined a variable outside of the loop so we have access to it from within the loop. Hugo Parameters Hugo provides the option of passing values to the template language through the site configuration (for sitewide values), or through the meta data of each specific piece of content. You can define any values of any type (supported by your front matter/config format) and use them however you want to inside of your templates. Using Content (page) Parameters In each piece of content you can provide variables to be used by the templates. This happens in thefront matter. An example of this is used in this documentation site. Most of the pages benefit from having the table of contents provided. Sometimes the TOC just doesn't make a lot of sense. We've defined a variable in our front matter of some pages to turn off the TOC from being displayed. Here is the example front matter: ``` --- title: "Permalinks" date: "2013-11-18" aliases: - "/doc/permalinks/" groups: ["extras"] groups_weight: 30 notoc: true --- ``` Here is the corresponding code inside of the template: <div id="toc" class="well col-md-4 col-sm-6"> </div> Using Site (config) Parameters In your top-level configuration file (eg, `config.yaml`) you can define site parameters, which are values which will be available to you in chrome. For instance, you might declare: ```yaml params: CopyrightHTML: "Copyright &xA9; 2013 John Doe. All Rights Reserved." TwitterUser: "spf13" SidebarRecentLimit: 5 ``` Within a footer layout, you might then declare a `<footer>` which is only provided if the `CopyrightHTML` parameter is provided, and if it is given, you would declare it to be HTML-safe, so that the HTML entity is not escaped again. This would let you easily update just your top-level config file each January 1st, instead of hunting through your templates. ``` <footer> <div class="text-center"></div> </footer> ``` An alternative way of writing the "if" and then referencing the same value is to use "with" instead. With rebinds the context `.` within its scope, and skips the block if the variable is absent: ``` <span class="twitter"> <a href="https://twitter.com/" rel="author"> <img src="/images/twitter.png" width="48" height="48" title="Twitter: " alt="Twitter"></a> </span> ``` Finally, if you want to pull "magic constants" out of your layouts, you can do so, such as in this example: ``` <nav class="recent"> <h1>Recent Posts</h1> <ul> <li><a href=""></a></li> </ul> </nav> ``` [go]: https://golang.org/ [gohtmltemplate]: https://golang.org/pkg/html/template/ Getting Started with Hugo /posts/hugo/hugoisforlovers/ Step 1. Install Hugo Go toHugo releasesand download the appropriate version for your OS and architecture. Save it somewhere specific as we will be using it in the next step. More complete instructions are available atInstall Hugo Step 2. Build the Docs Hugo has its own example site which happens to also be the documentation site you are reading right now. Follow the following steps: 1. Clone theHugo repository2. Go into the repo 3. Run hugo in server mode and build the docs 4. Open your browser to http://localhost:1313 Corresponding pseudo commands: ``` git clone https://github.com/spf13/hugo cd hugo /path/to/where/you/installed/hugo server --source=./docs > 29 pages created > 0 tags index created > in 27 ms > Web Server is available at http://localhost:1313 > Press ctrl+c to stop ``` Once you've gotten here, follow along the rest of this page on your local build. Step 3. Change the docs site Stop the Hugo process by hitting Ctrl+C. Now we are going to run hugo again, but this time with hugo in watch mode. ``` /path/to/hugo/from/step/1/hugo server --source=./docs --watch > 29 pages created > 0 tags index created > in 27 ms > Web Server is available at http://localhost:1313 > Watching for changes in /Users/spf13/Code/hugo/docs/content > Press ctrl+c to stop ``` Open yourfavorite editorand change one of the source content pages. How about changing this very file to *fix the typo*. How about changing this very file to *fix the typo*. Content files are found in `docs/content/`. Unless otherwise specified, files are located at the same relative location as the url, in our case `docs/content/overview/quickstart.md`. Change and save this file.. Notice what happened in your terminal. ``` > Change detected, rebuilding site > 29 pages created > 0 tags index created > in 26 ms ``` Refresh the browser and observe that the typo is now fixed. Notice how quick that was. Try to refresh the site before it's finished building. I double dare you. Having nearly instant feedback enables you to have your creativity flow without waiting for long builds. Step 4. Have fun The best way to learn something is to play with it. MathJax 支持 /posts/hugo/mathjax%E6%94%AF%E6%8C%81/ Inline Math ``` mathjax {title=Example render = true} abc e^{\pi i}=-1 \frac{3}{2} ``` Display Math ``` mathjax {title=Example render = true} \sum_{i=1}^{n}\int_{0}^{\pi}\log_2{e^n} ``` Using Latex Codeblock ``` latex f(n)= \begin{cases} f(n-1)+f(n-2) & n \ge 3 \\ 1 & n=1,2 \end{cases} ``` ``` latex f(n)= \begin{cases} f(n-1)+f(n-2) & n \ge 3 \\ 1 & n=1,2 \end{cases} ``` 扩展语法支持 /posts/hugo/%E6%89%A9%E5%B1%95%E8%AF%AD%E6%B3%95%E6%94%AF%E6%8C%81/ MkDocs 语法 Hint ::: ``` markdown { title=Example, render=true } !!! note `markdown` text ``` ::: ``` markdown { title=Example, render=true } !!! note Custom Title `markdown` text ``` <!-- --> ::: ``` markdown { title=Example, render=true } ??? note Collapsible `markdown` text ``` ::: ``` markdown { title=Example, render=true } ???+ note Collapsible Open `markdown` text ``` Hint 允许包含和嵌套任意内容。 ``` markdown { title=Example, render=true } ???+ bug ???+ bug ???+ bug Nested bugs. ``` MkDocs 一共支持 12 种 Hint。 ::: !!! note `markdown` text ::: !!! abstract `markdown` text ::: !!! info `markdown` text <!-- --> ::: !!! tip `markdown` text ::: !!! success `markdown` text ::: !!! question `markdown` text <!-- --> ::: !!! warning `markdown` text ::: !!! failure `markdown` text ::: !!! danger `markdown` text <!-- --> ::: !!! bug `markdown` text ::: !!! example `markdown` text ::: !!! quote `markdown` text Columns Columns 用于并排显示某些内容(在较窄的屏幕上会自动取消 Columns 效果)。 通过 HTML 注释 `<!-- -->` 将不同的 Columns 隔开。 ``` markdown { title=Example, render=true } ::: !!! note Top Left `markdown` text ::: !!! note Top Right `markdown` text <!-- --> ::: !!! note Bottom Left `markdown` text ::: !!! note Bottom Right `markdown` text ``` Tabs Tabs 用于呈现选项卡效果,允许包含和嵌套任意内容。 当 Tab 没有内容时,对应的选项卡将不可点击。 ``` markdown { title=Example, render=true } === Disabled === Tab 1 !!! tip This is Tab 1. === Tab 2 !!! warning This is Tab 2. === Tab 3 !!! danger This is Tab 3. ``` Stellar 语法 Inline Note ``` markdown { title=Example, render=true } {% note Title `Markdown` text %} {% note color:red Title `Markdown` text %} <!-- 使用 " " 在标题中呈现空格 --> {% note color:blue Hello World `Markdown` text %} ``` Note 一共支持 12 种颜色。 ::: {% note Default `Markdown` text %} ::: {% note color:red red `Markdown` text %} ::: {% note color:orange orange `Markdown` text %} <!-- --> ::: {% note color:yellow yellow `Markdown` text %} ::: {% note color:green green `Markdown` text %} ::: {% note color:cyan cyan `Markdown` text %} <!-- --> ::: {% note color:blue blue `Markdown` text %} ::: {% note color:purple purple `Markdown` text %} ::: {% note color:light light `Markdown` text %} <!-- --> ::: {% note color:dark dark `Markdown` text %} ::: {% note color:warning warning `Markdown` text %} ::: {% note color:error error `Markdown` text %} Mark Mark 和Note一样支持 12 种颜色。 ``` markdown { title=Example, render=true } {% mark Default %} {% mark color:blue Blue %} {% mark color:green Green %} ``` Tag ``` markdown { title=Example, render=true } {% tag GitHub https://github.com/ %} {% tag color:blue Hexo https://hexo.io/ %} {% tag color:green W3Schools https://www.w3schools.com/ %} ``` Copy ``` markdown { title=Example, render=true } {% copy sudo apt-get upgrade %} {% copy sudo ubuntu-drivers autoinstall %} ``` Radio ``` markdown { title=Example, render=true } {% radio `markdown` text %} {% radio checked:true `markdown` text %} ``` Checkbox ``` markdown { title=Example, render=true } {% checkbox `markdown` text %} {% checkbox checked:true `markdown` text %} {% checkbox symbol:plus color:green checked:true `markdown` text %} {% checkbox symbol:minus color:yellow checked:true `markdown` text %} {% checkbox symbol:times color:red checked:true `markdown` text %} ``` Display Folding ``` markdown { title=Example, render=true } {% folding Title open:true color:blue %} `Markdown` text {% endfolding %} ``` Folding 允许包含和嵌套任意内容 ``` markdown { title=Example, render=true } {% folding Warning color:yellow %} {% folding Dangerous color:orange %} {% folding Prohibited color:red %} `Markdown` text {% endfolding %} {% endfolding %} {% endfolding %} ``` Poetry ``` markdown { title=Example, render=true } {% poetry 独不见 author:唐·沈佺期 footer:诗词节选 %} 卢家少妇郁金堂,海燕双栖玳瑁梁。 **九月寒砧催木叶,十年征戍忆辽阳。** 白狼河北音书断,丹凤城南秋夜长。 谁为含愁独不见,更教明月照流黄? {% endpoetry %} ```
Quick Start 快速开始 /docs/hugo/quick-start/ 快速开始 命令 自动部署Action > 使用github-action实现自动部署Github Pages ```yaml 自动部署hugo,到 gh-pages分支 name: github pages 触发条件和分支 on: push: branches: - main Set a branch to deploy jobs: deploy: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 with: submodules: true Fetch Hugo themes (true OR recursive) fetch-depth: 0 Fetch all history for .GitInfo and .Lastmod - name: Setup Hugo uses: peaceiris/actions-hugo@v2 with: hugo-version: "latest" extended: true - name: Build run: hugo --minify - name: Deploy uses: peaceiris/actions-gh-pages@v3 with: github_token: deploy_key: PUBLISH_BRANCH: gh-pages PUBLISH_DIR: ./public ``` 注意事项 !!! danger "注意事项" 设置 secrets,不是在设置页面的`Environments`而是在`Secrets and variables`的 `Actions`中设置的! !设置Action secrets text /docs/example/folder_1/text/ h2 h3 h4