Friday, November 26, 2021

V2EX - 技术

V2EX - 技术


Typora 的打字机模式有替代品吗

Posted: 26 Nov 2021 06:56 PM PST

一直很喜欢 Typora 的打字机模式,始终让输入光标在屏幕中间,其他 md 编辑器有类似的功能或者插件吗?也想问下 idea 有这种功能吗?

谷歌翻译是完全没法用了

Posted: 26 Nov 2021 06:55 PM PST

打开谷歌翻译,英文翻译成中文简体,英文那一栏填"艾滋病人"。

Typora 1.0 发布正式收费, 15 刀 3 设备

Posted: 26 Nov 2021 06:26 PM PST

https://support.typora.io/What's-New-1.0/

突然收费。。看了看更新内容感觉可以停在 beta 版

为啥不参加黑五叻

jquery 生成的 chart 如何自动保存为图片

Posted: 26 Nov 2021 05:32 PM PST

jquery 生成的 chart 如何自动保存为图片,想插入到邮件附件里

操作记录精细到字段级别,有比较干净的方案么?

Posted: 26 Nov 2021 01:18 PM PST

就是 post 请求,需要知道修改到数据库改了什么字段做操作记录
实际上现在操作记录的实现已经是 AOP ,在路由层丢给一个单独的控制层去解决操作记录的问题
但是在路由层不可能记录到字段级别,毕竟也不可能在这个地方去查数据
所以有没啥干净一点的方案,实在是不想在业务逻辑的 controller 里再去逐个字段做对比...

或许最理想的方案是在 ORM 去做,但是目前对 ORM 的控制力实在有点弱...(go / gorm

go 语言提高 web 生产力

Posted: 26 Nov 2021 12:46 PM PST

试了下 go 语言

- 开发代码简洁
- 编译部署简单
- 心智负担较轻

慢慢写一写工具,深入下

薅羊毛买的腾讯云阿里云轻量级服务器真的性能很差吗?实测腾讯云轻量级 VS 搬瓦工的处理器跑分性能

Posted: 26 Nov 2021 12:13 PM PST

最近又剁手好薅了腾讯云的轻量级应用服务器,说白了就是一个容器,2H4G 8M 的带宽,这配置个人建站博客啥的都完全够用了,关键是便宜,3 年 198 ,戳 https;//3.cn/-1nb5iQB 平时新用户也没有这个价格,活动截止到 11 月底。
很多入坑的朋友都在说轻量级的云服务 cpu 是阉割版本,性能峰值有限制,远比不了国外的一些 vps 厂商良心,正好手里有好几台搬瓦工的,于是就用宝塔的跑分对比了同为 2H 的跑分,直接上截图:
搬瓦工的 2H 跑分:
3161
CPU
QEMU Virtual CPU version (cpu64-rhel6) 2 核心
腾讯云轻量级 2H 跑分:
5776
CPU
AMD EPYC 7K62 48-Core Processor 2 核心
对比而言,腾讯云的要比所谓的良心的国外厂商好很多,其他的就不多说了,所以就不清楚为啥很多朋友叫腾讯阿里套路云,不会想和真实物理机对比的,198 买三年 2H 物理性能,人家不滴亏死,不懂就要问。

今天入 R2S 软路由, TF 直接写入.gz 居然可可启动

Posted: 26 Nov 2021 11:45 AM PST

如题,我下载的第三方固件,.img.gz 格式,看很多教程都要解压得出.img ,再用写盘工具写入,但我忘了直接写,居然也可以,openwrt 正常启动,但纠结帝的我想重刷

Golang 日志美化输出 - ketty

Posted: 26 Nov 2021 11:00 AM PST

Ketty

ketty 是一个 Golang 开发的简单的日志美化输出 Logger 。

Github

https://github.com/anqiansong/ketty

安装

$ go install github.com/anqiansong/ketty@latest 

快速开始

func main(){     console.Info(`     {         "name":"Hello Ketty",         "description":"a color logger",         "author":"anqiansong",         "category":"console",         "github":"https://github.com/anqiansong/ketty",         "useage":[             "info",             "debug"         ]     }`)     console.Debug("Hello Ketty")     console.Warn("Hello Ketty")     console.Error(errors.New("error test")) } 

终端显示

terminal

Goland 显示

用法

直接使用

直接使用的 Console 实例支持一些默认配置项:

  • 使用 frame.WithLineStyle 作为边框
  • 默认美化日志
func main(){     console.Info("Hello ketty, This is info log")     console.Debug("Hello ketty, This debug log")     console.Warn("Hello ketty, This warn log")     console.Error(errors.New("Hello ketty,This is an error")) } 

初始化

    // 替换默认的边框     plusStyle := text.WithPlusStyle()     c := console.NewConsole(console.WithTextOption(plusStyle)) 

Console 配置

    c.DisableBorder() // 禁用边框     c.DisableColor() // 禁用颜色美化 

打印 log

    // 输出 info 日志     c.Info("Hello Ketty, It's now %q", time.Now()) 

边框样式

预设样式

  • WithLineStyle 默认样式
[INFO] 2021-11-26 23:24:51.826 ┌──────────── [INFO] 2021-11-26 23:24:51.826 │  Hello Ketty [INFO] 2021-11-26 23:24:51.826 └──────────── 
  • WithDotStyle
[INFO] 2021-11-26 23:25:16.794 ............. [INFO] 2021-11-26 23:25:16.794 .  Hello Ketty [INFO] 2021-11-26 23:25:16.794 .............  
  • WithStarStyle
[INFO] 2021-11-26 23:25:30.461 ************* [INFO] 2021-11-26 23:25:30.461 *  Hello Ketty [INFO] 2021-11-26 23:25:30.461 ************* 
  • WithPlusStyle
[INFO] 2021-11-26 23:25:45.736 +------------ [INFO] 2021-11-26 23:25:45.736 |  Hello Ketty [INFO] 2021-11-26 23:25:45.736 +------------ 
  • WithFivePointedStarStyle
[INFO] 2021-11-26 23:26:02.382 ★★★★★★★★★★★★★ [INFO] 2021-11-26 23:26:02.382 ★  Hello Ketty [INFO] 2021-11-26 23:26:02.382 ★★★★★★★★★★★★★ 
  • WithDoubleLine
[INFO] 2021-11-26 23:26:18.008 ╔════════════ [INFO] 2021-11-26 23:26:18.008 ║  Hello Ketty [INFO] 2021-11-26 23:26:18.008 ╚════════════ 
  • DisableBorder
[INFO] 2021-11-26 22:33:01.695   Hello Ketty, It's now "2021-11-26 22:33:01.695338 +0800 CST m=+0.000156150" 

自定义样式

  • WithCommonBorder
// 边框横向、众项、拐角均为一种符号 plusStyle := text.WithCommonBorder("x") 
[INFO] 2021-11-26 23:26:44.162 xxxxxxxxxxxxx [INFO] 2021-11-26 23:26:44.162 x  Hello Ketty [INFO] 2021-11-26 23:26:44.162 xxxxxxxxxxxxx 
  • WithBorder
    // arg1: 左上角符号     // arg2: 左下角符号     // arg3: 横向边框符号     // arg4: 垂直边框符号     plusStyle := text.WithBorder("=","=","-","|")     c := console.NewConsole(console.WithTextOption(plusStyle)) 
[INFO] 2021-11-26 23:26:59.321 =------------ [INFO] 2021-11-26 23:26:59.321 |  Hello Ketty [INFO] 2021-11-26 23:26:59.321 =------------ 

日志持久化

TODO

注意事项

Windows 不支持美化输出。

大家推荐把哪些配置文件放 Git 里?

Posted: 26 Nov 2021 09:59 AM PST

这几天新 Mac 到了,要开始重新配置,感觉是比较麻烦。

隐隐约约地记得看到过有人说把配置文件统一放到一个仓库里,然后到了新的环境拉下来,然后软链接过去。那么哪些配置文件适合放呢?

发现一个能拆分 Windows 任务栏又不显示标题的软件

Posted: 26 Nov 2021 08:36 AM PST

一直以来都被 Windows10 的任务栏搞得很烦, 合并任务栏切换任务不方便, 拆分任务栏会显示大标题, 使得整个任务栏空间被占用, 所以一直希望能够既拆分任务栏, 又不显示标题, 今天终于让我找到了!

软件叫做7+ Taskbar.

效果图如下 .

非常牛逼, 我真的爱死了, 用 Windows11 的可以试下有没有效果!

反杀 Google 翻译

Posted: 26 Nov 2021 08:17 AM PST

Oracle Cloud 免费实例现在有能直接连接的吗?

Posted: 26 Nov 2021 08:14 AM PST

准备放一下自己的东西,主区域注册到日本东 东京了,创建了一个实例发现裸连不上,这样就很蛋疼了,删机器重建能碰上可以裸连的 IP 吗?😂

求助 nestjs many-to-many 查询失败

Posted: 26 Nov 2021 07:44 AM PST

我有两个 Entity:

@Entity() export class UserEntity {   @Column({ unique: true, nullable: false })   id: string    @ManyToMany(() => RoleEntity, (r) => r.users, {     cascade: true,   })   @JoinTable()   roles?: RoleEntity[] }   @Entity() export class RoleEntity {   @Column({ unique: true, nullable: false })   name: string    @ManyToMany(() => UserEntity, (u) => u.roles)   users?: UserEntity[] } 

我想构造一个查询:

api.user.search({   roles: [     'admin',     'vip',   ], }) 

通过传递 RoleEntity.name 数组, 能查询到所有拥有这些 role 的 user, 只要 search.roles 和 user.roles 存在交集就能查询出来

也就是说, 王小明的 roles 是 ['loser', 'vip'], 而我查询 ['admin', 'vip'], 那么, 王小明也应该被查询出来, 因为他是 vip

但是我的方法报错 Cannot query across many-to-many for property roles, 我的方法是:

userRepo.findAndCount({   where: {     roles: {       name: Raw((alias) => `${alias} @> ARRAY[:...roles]`, { roles: ['admin', 'vip'] }),     }   } }) 

网上只有关于 roles 是数组时的查询, 但是我的 roles 是 Entity 数组, 是 many-to-many, 我只是个菜鸟前端, 实在搞不来了, 大佬们救救孩子吧

Windows 系统间歇性卡顿,声音鬼畜。

Posted: 26 Nov 2021 07:44 AM PST

电脑之前都是正常的,后来搬过一次家,电脑就突然出现过一段时间会卡顿一下。 具体表现为:电脑画面帧数降到个位数,然后声音也很鬼畜,过两三秒后又恢复正常。 电脑系统为 Windows 10 后来升级到 Windows 11 也还是有同样的问题,不知道咋办了。 各位 V 友有遇到相似情况的吗,如何解决啊。

属性名不让用 is 开头,应该用什么?

Posted: 26 Nov 2021 07:18 AM PST

有没有可以像浏览器收藏夹那样,可以浏览本地文件的软件

Posted: 26 Nov 2021 07:13 AM PST

有没有可以像浏览器收藏夹那样,不用点开文件 可以浏览本地文件的软件

有偿求回合制游戏服务器老哥指点

Posted: 26 Nov 2021 05:58 AM PST

我只在两年前在回合制战斗系统中写过两三个技能以及 buff ,现在需要从零搭起一套战斗系统,也不是很复杂和庞大,只有一个普通攻击技能,然后大概有二十来个 buff 。迫于本人才疏学浅,面向 V 站求老哥指点技能和 buff 的配置表制定以及代码实现过程,语言为 Go 。 有偿,有偿,有偿。

V:QUZURVIxNjA3MTM=

NVIM Java 开发遇到的问题

Posted: 26 Nov 2021 04:31 AM PST

NVIM Java 开发遇到的问题

有没有一个插件可以搜索依赖 jar 包源码里的类,和全局搜索jar源代码?

Intellij 查询 Elasticsearch 利器: 可视化编辑查询语句, 可视化交互展示 Elasticsearch 查询结果

Posted: 26 Nov 2021 04:10 AM PST

介绍

一直在用 Elasticsearch 作为大宽表数据同步和时序数据存储, 但是奈何没有可用的查询分析客户端, 因此写了一个 Intellij 插件作为 Elasticsearch GUI client, 可视化查询和可视化展示查询结果, 效果如下图.

插件地址: Elasticsearch Query - EDQL

快速查询

可视化编辑

请各位大佬指一个学习方向

Posted: 26 Nov 2021 04:03 AM PST

  • 大致情况:国外本科在读, 由于疫情无法出国, 再加上学校教的东西和现在流行技术脱节, 所以自学 JAVA 并找了一份实习工作, 准备转正后攒来年学费 and 生活费. 目标 6W(留学国是马来西亚,和国内消费差不多,凑着有英语环境+便宜才过去的),目前在继续学习的目标上有些迷失,所以想请教下过来人,望不吝赐教.

  • 技术栈:JAVA, Spring, Spring MVC, Spring boot, MyBatis, MyBatis-plus(以其一些杂七杂八的 maven,git 等工具),前端只会 H,C,J 属于改代码还行,自己写的东西稀碎.

  • 目前公司:传统制造行业,实习生 6K(交五险之前),跟老员工讨论过,预计转正不会超过 7.5,工作时间 856,不加班,由于公司属于制造业,项目一般是属于本地单机版, 给客户放在本地服务器上跑,不接触互联网,也就没有 Spring cloud,NoSQL,中间件等技术的使用.

  • 目标: 税后 1W,不加班(因为晚上补网课),接受朝九晚六和大小周

  • Questions:

  1. 接下来的学习方向是什么?
    • 前端? 如果是: 该怎么学呢? 前端虽然和后端是搭配干活,但是差别还蛮大的, 我看完了 H,C,J 之后除了老师交的一些页面,自己创造能力基本为 0,而且不同的领域,相比也要花费更大的学习成本.
    • 继续学习后端技术: 如 spring cloud, spring security, Redis, 消息中间件之类的,这个也是我暂定的方向,但是它有一个问题, 面试项目怎么写? 后端写的再好,前端拉跨估计面试也大打折扣吧.
    • 算法: 我感觉比起算法,还是先加强业务方面吧, 比起算法差,我更怕完不成业务而失业.
  2. 对于一个未毕业的学生,普通公司会给开到 1W 吗?
    • 只是个人主观意识, 同样的能力,在校生给开的更低
  3. 各位方便透露下所在城市和每月开支吗?
    • 不泡吧, 抽烟, 房子有热水和洗衣机即可,预计生活费大概多少? 目前在嘉兴,房租 500, 公司报完之后,吃饭大概花费 500, 娱乐开支大概也是 500, 我感觉如果到北上广,这些开支要翻一倍

手机主屏竖屏,副屏如何纵向显示

Posted: 26 Nov 2021 03:35 AM PST

首先呢,很多废答案要排除,比如无线投屏,买根线,还有我手机一起横屏的,这些都不是我要的答案,我要的答案很明显就是如图上所述,就是插线输出的时候,如何把副屏信号输出给旋转过来,如果有人知道怎么解决的话,可以有 100 现金酬劳,我手机已经 root 了,可以改动底层文件
https://m.weibo.cn/#&gid=1&pid=1

Windows11 开机一段时间后变得超级卡顿

Posted: 26 Nov 2021 03:28 AM PST

不知道你们有没有遇到,电脑 内存 16G ,开发时需要跑大概 4 个微服务+ IDEA , 内存基本保持在 80+,一段时间后变得很卡顿
然后把所有的东西全部关闭,打开个浏览器标签还是卡的跟 PPT 一样,必须重启才能解决问题,win10 没遇到这个问题,打算回滚了,用了一个月的 win11 ,平心而论,还不如 10 ,严重影响开发,敲一行代码卡一下,就这个文件资源管理器把我劝退了,负优化。
电脑配置:
处理器 Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz 2.90 GHz
机带 RAM 16.0 GB (15.8 GB 可用)

win 版本
版本 21H2
安装日期 ‎2021/‎10/‎22
操作系统版本 22000.318
序列号 M70J2SEV
体验 Windows 功能体验包 1000.22000.318.0

iPhone 的 gmail app 无法收到邮件推送,自带的邮件应用也收不到

Posted: 26 Nov 2021 03:16 AM PST

各位老哥有遇到这个情况吗,手机重启、重置全部设置,小飞机切全局、换 M 国节点都试过了

网页聊天机器人的后端结构是什么样的?

Posted: 26 Nov 2021 03:07 AM PST

就是那种你输入一段话,点"发送", 机器人接受到你的话,调库回复。
最普通的网页机器人。

想问下做这么一个网站,网站的后端结构应该是什么样的?(不是问聊天 AI 程序的结构)

难道说做一个接收语句内容的 API ,
每次点"发送" 都调这个 API ,再把语句 POST 给服务器吗?总感觉哪里不对啊!

公司商用项目推荐用 QT 吗

Posted: 26 Nov 2021 03:00 AM PST

目前准备开发一款商用软件,看到同行用了 QT,本身公司技术栈 C++,选型 QT 应该是比较合适的。 看了下 QT 好像商用是收费的,有没有用 QT 的小伙伴来说说

新人请教一下怎么添加判断

Posted: 26 Nov 2021 02:08 AM PST

原代码:

def extract_features(img_dir, model):     try:         cache = Cache('./tmp')         feats = []         names = []         img_list = get_imgs(img_dir)         total = len(img_list)         cache['total'] = total         for i, img_path in enumerate(img_list):             try:                 norm_feat = model.resnet50_extract_feat(img_path)                 feats.append(norm_feat)                 names.append(img_path.encode())                 cache['current'] = i + 1                 print(f"Extracting feature from image No. {i + 1} , {total} images in total")             except Exception as e:                 LOGGER.error(f"Error with extracting feature from image {e}")                 continue         return feats, names     except Exception as e:         LOGGER.error(f"Error with extracting feature from image {e}")         sys.exit(1) 

大概位置是下面这里:

def extract_features(img_dir, model):     try:         cache = Cache('./tmp')         feats = []         names = []         img_list = get_imgs(img_dir)         total = len(img_list)         cache['total'] = total         #check if img_dir is a image or image_path         #if it is image, create embedding and return, else, traverse the directory         for i, img_path in enumerate(img_list):             #extract feature         return feats, names     except Exception as e:         LOGGER.error(f"Error with extracting feature from image {e}")         sys.exit(1) 

请问一下应该如何写啊? 判断传入的是图片文件名还是目录

Ulysses 里有 200 篇稿子,怎么一次性转到 Obsidian

Posted: 25 Nov 2021 11:26 PM PST

Ulysses 可以一次性导出全部内容,只能 200 篇连在一起。
现在找到的办法就是一篇一篇复制过去
除此之外大伙还有办法吗

( Ps 每天写 2000 字小软文,我不配用 Ulysses )

C 端用户日志查询问题

Posted: 25 Nov 2021 10:55 PM PST

用户有专一的 token ,key 是唯一的随机字符串。value 是用户信息

我们在定位问题的时候,要从 redis 海量的 token 中找具体用户的 token 。

但我们只能拿到用户的手机号这个信息,并不能根据手机号去找 token 。

请问这种情况下下,大家都是怎么设计的?快速定位某个用户的 token

Windows11 输入法的 BUG

Posted: 25 Nov 2021 10:30 PM PST

默认情况下 Windows 会自带一个微软输入法,但我一般习惯用搜狗输入法,所以就又装了个搜狗输入法,但因为两个输入法都是中文,而我玩游戏需要经常按左 shift 键,然后导致按完 shift 再按字母就变成输入中文的情况。后来经过网上查询,就把微软输入法删除了,在"语言&区域"中添加了英语并且设为了首选项,就这样问题解决了。

然后问题来了,今天早上打开电脑,发现微软输入法莫名其妙又回来了,这也许跟前几天更新了系统有关系?我更新系统不应该保留我的配置吗?

GitHub Copilot 可以写帮我写中文文章了

Posted: 25 Nov 2021 10:13 PM PST

GitHub Copilot 对中文的理解让人震惊,不仅可以补充一些基本的信息,还可以根据上下文进行推导,完整的记录见这个 Tweet: https://twitter.com/madawei2699/status/1458313535792955393

这篇文章就是和它合写的: https://www.bmpi.dev/dev/guide-to-k8s-cloud-native/

照这样学习下去,以后作者只需要当个编辑就好了😂

windows11 还能像以前版本那样 在底部任务栏放 工具栏文件夹吗?挺实用的小功能 现在找不到了

Posted: 25 Nov 2021 08:29 PM PST

如下图 oE8TzV.md.png

在 Apps Script 中获取当前时间插入邮件正文

Posted: 25 Nov 2021 07:13 PM PST

https://developers.google.com/apps-script/reference/utilities/utilities#formatDate(Date,String,String) 中找到获取当前时间的方法

var formattedDate = Utilities.formatDate(new Date(), "GMT+8", "yyyy-MM-dd'T'HH:mm:ss'Z'"); Logger.log(formattedDate);

如何将获取到的时间插入到如下的邮件的正文中,可以让每封邮件的内容都不一致。

function fn() {

MailApp.sendEmail("1******.1*******.2kdep4d-ZC@txt.voice.google.com", "", "Hello, World!");

MailApp.sendEmail("1******.1*******.2xx-m54oeg@txt.voice.google.com", "", "Hello, World!");

}

尝试过以下的方式,直接被 Google Apps Script 报错

function fn() {

var formattedDate = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd'T'HH:mm:ss'Z'");

Logger.log(formattedDate);

MailApp.sendEmail({"1******.1*******.2kdep4d-ZC@txt.voice.google.com", "", "body: Logger.getLog(),Hello, World!"});

MailApp.sendEmail({"1******.1*******.2xx-m54oeg@txt.voice.google.com", "", "body: Logger.getLog(),Hello, World!"});

}

识别英文艺术字体的 api 有没有?收费免费都可以

Posted: 25 Nov 2021 05:29 PM PST

需要批量识别一些英文艺术字体图片,搜了一下常规的 ocr 网站,识别都不太好,有没有识别英文字体最好的应用?

异常抛出后能穿越回代码执行前 debug 吗?

Posted: 25 Nov 2021 04:48 PM PST

最近才发现 python pdb.pm() 可以穿越回异常发生前进入调试模式,之前从来没想到异常已经发生,还能够重回现场。

……也许是自己比较菜,之前没见过这么用的

No comments:

Post a Comment