跳到主要内容

· 阅读需 4 分钟
star

魔兽世界国服开服在即,根据网易官方的公告,将先开放《巫妖王之怒》。相信很多地精玩家已经摩拳擦掌了,那么让我们一起来看看如何在 WLK 当地精赚钱。

1. 工具篇

工欲善其事必先利其器,作为一个合格的地精,提速的工具是必不可少的。常见的工具包括插件、宏等,下面将一一介绍。

1.1 论坛篇

学习交流是人成长的关键,国服最大的论坛莫过于NGANGA 专门开辟了一个地精商会栏目,可以前往论坛学习其他成功地精的经验。

1.2 插件篇

1.2.1 黑盒工坊

黑盒工坊是一款插件管理工具,里面包含了常用的插件、 WA 脚本、魔兽世界数据等,支持插件的更新,非常方便。

1.2.2 TSM

TSM 是目前使用比较多的拍卖行插件,玩家可以通过黑盒工坊进行下载。插件的使用可以参考论坛文章。接下来的小节,会针对最常用的功能进行介绍。

1.2.3 idtip

在宏或者其他插件里,会用到物品的 id ,可以使用这款插件查询物品的 id

1.3 宏

2. 规则篇

拍卖行( AH )是魔兽世界里非常重要的一个机制:它允许玩家将商品托管到拍卖行,供其他玩家购买。拍卖行也有一些规则(例如收取托管费、交易成功之后收取手续费等),了解这些规则是非常必要的。

2.1 交易对象

魔兽世界划分了两个阵营:联盟和部落。主城里的拍卖行,只能同阵营的玩家进行交易。但有一些中立拍卖行(加基森、藏宝海湾等),允许购买敌对阵营的物品,这使得倒卖敌对阵营的商品成为可能。

2.2 托管费用

当你将商品托管给拍卖行的时候,无论交易成功与否,都需要支付一笔托管费。托管费的多少取决于商品卖给 NPC 的价格和你托管的时长。有一些商品(例如附魔材料)NPC 是不收的,所以也就没有托管费用。

举个例子:一个商品卖个 NPC100G ,如果托管12个小时,拍卖行会收取8%的托管费,即 8G;托管24小时,收取20%的托管费,即 20G ,以此类推。拍卖行最多支持托管48个小时,超过48个小时,还没有成交,商品会通过邮件的形式邮寄给你。

· 阅读需 3 分钟
star

CSS (级联样式表)是一种控制 HTML 页面样式的语言。页面样式中,控件的大小是必不可少的,那么 CSS 是怎么处理长度使得在不同的设备上都能按照我们预想的大小进行展示呢?

1. 基本概念

在介绍 CSS 如何处理长度之前,需要先介绍一些重要的概念,它们是理解问题的关键。

1.1 像素

像素是构成数字影像的最小单元,一幅数字影像由千千万万的像素构成。例如一台数码相机,它的宽有1600个像素,高有1200个像素,那么它拍出来的照片就有 1600 * 1200 = 192万个像素。目前很多手机摄像头的像素能达到一亿,用这样的手机拍出的照片也就更加清晰。

1.2 分辨率

分辨率是用来测量显示系统对细节的分辨能力,常见的单位有:dpi (点每英寸)、lpi (线每英寸) 和 ppi (像素每英寸)。其中 dpi 用于打印领域,ppi 用于数字图像显示领域。可以看到分辨率指在单位长度下,像素的数量。像素越多,对细节的分辨能力也就越强。

1.3 1080P和2K

1080p2K 都是分辨率的概念,但又并不是上面介绍的单位,但可以进行转换。显示器长宽比一般为 16:9 ,业界通常把 1920*1080 的显示器(或者视频)称为 1080p,它的含义是宽有1920个像素,高有1080个像素。2K 是指宽度像素的个数接近2000个,所以严格意义来说,1080p 也可以算 2K,但目前 2K 屏幕指的是 2560*1440

转换成 ppi 也非常容易,假设一个 2560*1440 的显示器,它大小是27寸,这里的27寸指对角线的长度。根据勾股定理,可以算出对角线的像素个数约为2937个,所以 ppi 约为108。手机屏幕的 ppi 计算方式一样,懂得了计算方式之后,就不怕厂商忽悠了。

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 1 分钟
star

1.在vs中,用浏览器打开文件

 编辑 html 文件时,需要用浏览器打开文件进行调试。这里可以使用 vs codetask 功能。

  • 按下 F1 ,在弹窗里面搜索 Config Task ,如果之前没有配置过 task ,可以点击模板,创建 task
  • 编辑 task 文件,这里 group 选择的 build ,这样 Ctrl + Shift + B 就可以唤出 open in explorer 这个 task
{
"version": "2.0.0",
"tasks": [
{
"label": "open in explorer",
"command": "explorer",
"windows": {
"command": "explorer.exe"
},
"group": "build",
"args": [
"${file}"
]
}
]
}

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 2 分钟
star

 互联网极大的方便了知识和信息的传播,将其视为人类历史的最伟大的发明之一都不为过。本文整理互联网上一些非常优质的资源,相信它能帮助到大家。

1. 网络搭建

1.1 nip.io

nip.io是一款免费的 DNS 解析器,它能将任意的一个 ip 地址映射成为一个域名。例如,笔者购买了一台云服务器,云服务器厂商分配的 ip 地址为: a.b.c.d 。那么 a-b-c-d.nip.io 域名就会解析到我们的云服务器,非常的方便。

1.2 x-ui

x-ui是一款支持多协议多用户的 xray 面板,适合小白用户搭建自己的 xray 服务器。

2. 多媒体

2.1 Spleeter

Spleeter能够将音频分成背景音乐和人声,它支持英语、中文、阿拉伯语、法语、日语等。有需要做音频混合、自媒体的小伙伴可以试一试。

3. 金融投资

3.1 OpenBBTerminal

OpenBBTerminal是一款金融投资分析工具,提供 ui 界面和 SDK 两种方式。

4. AI

4.1 AnimatedDrawings

AnimatedDrawings能够让你的画像人一样运动。

4.2 faster-whisper

faster-whisper相比于 openaiwhisper 主要有以下两个优点:

  1. 占用更少的显存
  2. 支持单词级别的时间戳

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 3 分钟
star

 有些开源代码对 Windows 系统支持的不是很好,有时只能在 Linux 系统下编译。安装虚拟机能解决部分问题,但调试代码的体验不是很好,不如安装双系统。

 相信小伙伴们已经看过很多双系统教程了,已经知道 Ubuntu 的引导程序能够识别 Windows 的引导程序。这里需要注意的是安装 Ubuntu 的时候不要将 Windows 的引导程序覆盖了,对于像笔者一样有多块磁盘的小伙伴还需要将 Ubuntu 的引导程序和 Windows 的引导程序放到同一个磁盘,这样 Ubuntu 就能正常识别到 Windows 的引导程序,实现双系统切换。

1. 启动盘制作

 这一步没有太多需要注意的地方,只需将 Ubuntu 的安装镜像打包到 U 盘中,同时让电脑从 U 盘启动即可。Ubuntu 的镜像可以前往官网进行下载,镜像写入工具可以使用ultraiso

提示

U 盘格式化的时候需要注意,不要用 FAT32 ,因为 FAT32 最多只支持4 G

2. 给Ubuntu分配磁盘空间

 前面介绍过,笔者的系统有两块磁盘,所以在两块磁盘上都为 Ubuntu 分配了空间。C 盘所在的磁盘只分配了10 G (其实可以更少),用来存放 Ubuntu 的引导程序,Ubuntu 的根目录挂在到了 D 盘所在的磁盘。


3. 安装Ubuntu

 进入 BIOS,选择 U 盘启动,即可进行系统的安装流程。选择安装模式时,一定要选择最后一个选项,否则就有可能将 Windows 的引导程序覆盖掉。点击下一步就进入到磁盘挂载的页面,找到步骤2分配的磁盘进行挂载,记住需要将 Ubuntu 的引导程序放到 C 盘所在的磁盘。安装完成重启,即可看到系统选择界面了。

选择安装模式

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 1 分钟
star

chatgpt自发布以来在世界范围内掀起了一股热潮,相信很多中国的朋友也想尝尝鲜。除了科学上网之外,chatgpt 还需要使用国外的手机号进行验证,这时需要使用虚拟运营商。

sms-activate-org是一家比较常用的虚拟运营商,它支持支付宝,充值非常方便。chatgpt 虚拟电话的价格在一美元以内,故只需要充值1美元即可。充值完成之后,在页面左侧搜索 chatgpt 服务,进行购买即可。购买完成之后,前往 chatgpt 官网进行手机号验证,等待虚拟账号接受短信即可。

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 2 分钟
star

 随着 chatgpt 的发布,open ai 火遍全网,但它所需要的算力也将普通人拒之门外。Github 上一位保加利亚的大神实现了 open ai 的模型,声称可以在个人计算机上运行,本文基于ggerganov /whisper.cpp这个仓库,在 Windows 上运行 whisper 模型。

1. cygwin & MinGW 安装

 该模型编译依赖 gcc ,故需要先在 Windows 上安装 gcc 的编译环境。 cygwin 使用广泛,故本文采用 cygwin

 前往cygwin官网下载安装包,安装到下面界面的时候,记得搜索以下 gcc,找到 mingw 对应的包,只需要选中 gcc-g++ 即可,它会自动安装对应的依赖。

 安装完成之后,打开 cygwin,检查 /usr/bin/ 目录下是否已经安装好 gcc 了。

2. 模型下载

 将 ggml 格式的模型下载到本地。打开 Windows Power Shell,进入到下载文件的 models 目录下,执行以下命令:

.\download-ggml-model.cmd base.en

3.执行编译

 因为 cygwingccg++ 名字问题,在执行 make 命令时需要指定参数。

make CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++
信息

 如果提示找不到 dll,思路如下:

  1. 确认 dll 是否已经安装,通过 cygwin 的安装程序即可查看。
  1. 将下面变量放到 .bashrc 文件里
export LD_LIBRARY_PATH=/usr/lib
export PATH=$PATH:/usr/x86_64-w64-mingw32/sys-root/mingw/bin

4. 执行 whisper

./main -f samples/jfk.wav

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 2 分钟
star

 在编写技术文档时,为了让读者能够更好的理解,一般会贴运行的效果图。本文介绍安卓模拟器如何录制 gif

1. 使用LICEcap

LICEcap是一款简介、免费的屏幕录制工具。它操作非常简单,只需要将待录制的内容放入 LICEcap 的操作框内,点击 Record 即可开始录制。


提示

 点击开始录制之后,有3秒钟的准备时间。

2. 使用模拟器自带录屏工具

 安卓模拟器自带录屏工具,在模拟器的右侧点击 more ,弹窗里 Record and Playback 即为录屏工具。


署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 2 分钟
star

react-spreadsheetreactexcel 组件,官方文档内容比较少,本文结合Spreadsheet的源代码,介绍一些该表格组件的几个非常重要的属性。

1. 列标签

 列标签是一个字符数组,默认值为:[A,B,C,...]。属性名称为:columnLabels。举个例子:

<Spreadsheet data={[[{ value: "$PROFILE" }, { value: "当前用户,当前主机" }]]} columnLabels={["变量","说明"]}  />

2. 行标签

 和列标签一样,行标签也是一个字符数组,默认值为:[1,2,3,...],属性名称为:rowLabels,例子同上。

3. 隐藏行标签

 隐藏行标签是一个布尔类型,默认值为false,属性名称为:hideRowIndicators

4. 隐藏列标签

 隐藏列标签是一个布尔类型,默认值为false,属性名称为:hideColumnIndicators

5. value为==时渲染失败

 在==前加上空格即可

署名-非商业性使用-禁止演绎 4.0 国际

· 阅读需 3 分钟
star

minikube是单机版的k8s,方便学习和开发k8s

 在 minikube 的官方案例中,使用了 k8s.gcr.io 镜像。gcrGoogle Cloud 的镜像仓库,所以国内是无法访问的。 阿里云的镜像代理地址为:registry.aliyuncs.com/google_containers,需要将 gcr 的镜像地址替换为阿里云的地址,例如:k8s.gcr.io/echoserver:1.4registry.aliyuncs.com/google_containers/echoserver:1.4

minikube 有非常多的插件,通过 minikube addons list 可以查看插件列表,通过 minikube addons enable xxx 可以启用 xxx 插件。官方案例启动的是 metrics server,但该插件也是 k8s.gcr.io 的镜像,所以无法正常运行,需要替换镜像地址。

 这里先介绍一下如何定位到镜像拉取失败。因为 addons 并没有部署到默认空间,在 k8s 里面,可以通过kubectl get namespace获取所有的命名空间。metrics serverkube-system 这个空间中,通过kubectl get pods -n kube-system可以看到 metrics server 拉取镜像失败了。

 需要将 metrics server 的镜像替换为阿里云的镜像,通过kubectl edit deploy metrics-server -n kube-system,可以修改它的镜像地址。国内的地址为 registry.aliyuncs.com/google_containers/metrics-server:v0.4.2,修改之后进行保存,再次使用kubectl get pods -n kube-system查看 metrics server 容器的状态,发现在启动中。

 为了验证 metrics server 是否启动完成,可以执行kubectl top nodes,可以查看 k8s 集群资源的使用情况。

ingress 插件和 metrics server 类似,也是镜像无法拉取。有点不同的是 ingress 的命名空间是 ingress-nginx,如果要获取所有命名空间的 pods,可以使用 kubectl get pods --all-namespaces。很遗憾,在阿里云的镜像仓库,没有找到 ingress 的镜像,只能使用代理了。

 笔者本机启动了一个 http 代理,本地可以通过 localhost:4567 访问。但 minikube 是在容器里面拉取镜像,容器本身的 localhost 并不是宿主机的 localhost。根据官方文档minikubev1.10 之后加入了host.minikube.internal用来访问宿主机的 localhost,最终使用以下命令启动 minikube,成功拉取到 ingress 的镜像。

minikube start --docker-env HTTP_PROXY=http://host.minikube.internal:10180 \
--docker-env HTTPS_PROXY=http://host.minikube.internal:10180
提示

 搭建代理可以参考海外建站全攻略

署名-非商业性使用-禁止演绎 4.0 国际