分类目录归档:科技

英文中的连字符和下划线

英文中的连字符(-)和下划线(_)

起因

下面两种命名方式,在编辑器双击 button_height 全部选中,编辑器双击 button-height 不能全部选中,编辑器为什么这样设计?

  1. button-height
  2. button_height

在 页面仔 群问了一下,得到了答案:

linxz:因为 – 是连字符

linxz:从英文单词的角度去考虑,这里算是两个单词

linxz:而双击选中一般是选择单词,中文是选择词

连字符(hyphen)

牛津词典

  • 将多个或更多的词组成复合词
    • hard-hearted(铁石心肠)
    • fork-lift truck(叉车)
    • mother-to-be(孕妇)
  • 将前缀和转悠名词组成复合词
    • pre-Raphaelite(前拉斐尔派)
    • pre-European(欧洲前史)
  • 书写21-99之间的复合数字时
    • seventy-three(73)
    • thirty-one(31)
  • 有时用在英式英语中用以将以元音结尾的前缀与以相同元音开始的词隔开
    • co-operate(合作)
    • pre-eminent(卓越的)
  • 转行时用于单词的前半部分之后

下划线(underscore)

牛津词典 中 这个不算标点符号,在这个单词 underscore 的释义下说明:下划线、底线,用于字母下划线或计算机命令和互联网网址中。

在计算机中,一般用于不允许出现空格的地方,比如:

  • 文件名
    • The_Dark_Knight_2008_1080p.mkv
  • 变量名
    • const MAX_LENGTH = 100;
  • 函数名
    • function get_user_info() {}
  • 等等

拓展

如何配置编辑器(Visual Studio Code),使得双击 button-height 全部选中?

  1. 打开 settings.json 文件
  2. 添加/编辑如下配置
    {
        ...
        // "editor.wordSeparators": "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?", // 默认配置,去掉 -
        "editor.wordSeparators": "`~!@#$%^&*()=+[{]}\\|;:'\",.<>/?",
        ...
    }
    
  3. 保存配置文件,即可

更多配置阅读查看:Visual Studio Code User and Workspace Settings

参考

  1. 如何使用英文连字符 – Wordvice Blog
  2. Underscore | Punctuation | Grammar | Glossary | Ultius
  3. Underscore – Wikipedia
  4. underscore, n. meanings, etymology and more | Oxford English Dictionary
  5. 牛津词典

获取统计相关免费数据源

Trading Economics

https://tradingeconomics.com/

世界银行

https://www.worldbank.org/en/home

Our World in Data

https://ourworldindata.org/

OECD

https://data.oecd.org/

IMF

https://www.imf.org/en/Data

中国统计局

http://www.stats.gov.cn/

TIPS

尽可能查找一手信息,一手信息的价值远远大于二手信息。

  • 一个国家数据
    • GDP
    • CPI
    • 就业率
    • ……
  • 一个公司
    • 公司年报
    • 创始人访谈
    • ……

在 macOS 上安装 Photoprism

目的

二次开发 或 贡献代码(Contribution)

准备

  • 系统:macOS Ventura 13.3.1 (22E261)(M1 Pro)
  • git
  • make
  • docker & docker-compose
  • nodejs

开始

参照官方文档:Setting Up Your Development Environment

1、克隆仓库

git clone git@github.com:photoprism/photoprism.git

cd photoprism

2、启动本地开发环境

make docker-build

docker compose up

# 或 后台进程
# docker compose up -d

3、安装依赖

make terminal

make dep

make build-js

make build-go

./photoprism start

完成

执行到这一步基本上就完成。

  • http://localhost:2342
  • https://localssl.dev

账号密码去 docker-compose.yml 文件里面环境变量(environment)处寻找。

  • 账号KEY: PHOTOPRISM_ADMIN_USER
  • 密码KEY: PHOTOPRISM_ADMIN_PASSWORD

遇见问题

问题一:docker compose up 无法正常安装 tensorflow lib 库

执行 docker compose up 时有一个步骤需要安装 tensorflow lib 库,我这边碰见一个问题是,

安装了一个不存在的版本:https://dl.photoprism.app/tensorflow/arm64/libtensorflow-arm64-auto-1.15.2.tar.gz,连接上多了一个 auto

正确版本应该是:https://dl.photoprism.app/tensorflow/arm64/libtensorflow-arm64-1.15.2.tar.gz

修改一下这个文件的68行: scripts/dist/install-tensorflow.sh:68,删除选中的代码即可。

临时删除(-${TF_DRIVER})

是否正确,需要去这个网站查看下是否有对应的源文件:https://dl.photoprism.app/tensorflow/arm64

问题二:make build-go 安装慢

make build-go 安装慢,可以设置代理(阿里云):

export GO111MODULE=on
export GOPROXY=https://mirrors.aliyun.com/goproxy/
make build-go

macOS 如何修复问文件夹权限 drwxr-xr-x+、drwxr-xr-x@ 删除+、@权限

@

规则:如果文件夹有@,则表示有ACL权限。

xattr -c <finder>

示例:

> ll
drwxr-xr-x@ 14 yantao  admin   448B  4 17 01:38 code
> xattr -c code
> ll
drwxr-xr-x  14 yantao  admin   448B  4 17 01:38 code

+

规则:如果文件夹有+,则表示有ACL权限或者有扩展属性。

chmod -N <finder>

示例:

> ll
drwxr-xr-x+   5 yantao  admin     170 Oct  5 03:43 Desktop
drwxr-xr-x+  17 yantao  admin     578 Sep 25 22:20 Documents
> chmod -N ~/Destop
> ll
drwxr-xr-x    5 yantao  admin     170 Oct  5 03:43 Desktop
drwxr-xr-x+  17 yantao  admin     578 Sep 25 22:20 Documents

一些资料

七牛云对象云存储

https://developer.qiniu.com/dora/3683/img-directions-for-use

图片处理 参数 简介
图片瘦身 imageslim 将存储在七牛的JPEG、PNG格式的图片实时压缩而尽可能不影响画质。
图片基本处理 imageView2 可对图片进行缩略操作,生成各种缩略图。imageView2 接口可支持处理的原图片格式有 psd、jpeg、png、gif、webp、tiff、bmp。
图片高级处理- 缩放 thumbnail 将图片缩放至指定大小。
图片高级处理- 裁剪 crop 普通裁剪、缩放裁剪
图片高级处理- 旋转 auto-orient
rotate 自适应旋转、普通旋转。
图片高级处理- 格式转换 format
colors 格式转换、GIF 颜色控制。
图片高级处理- 渐进显示 interlace 将图片调整为渐进显示。
图片高级处理- 背景色填充 background 对图片填充背景颜色
图片高级处理- 质量变换 q 对图片质量进行调节
图片高级处理- 高斯模糊 blur 对图片进行模糊处理
图片高级处理- 锐化 sharpen 对图片进行锐化处理
图片高级处理- 去除元信息 strip 可去除图片元信息,包括 exif 信息
图片高级压缩 format imageView2 和 imageMogr2 支持图片高级压缩功能,可以更加高效地将图片转化为 HEIF 高压缩比格式。
图片基本信息 imageInfo 可以获取图片格式、大小、色彩模型信息。
图片水印处理 watermark 提供四种水印接口:图片水印、文字水印,文字平铺水印、混合水印。
图片盲水印处理 watermark 为原图添加不可见水印,不影响原图质量。
图片EXIF信息 exif 获取数码相机照片的可交换图像文件格式。
图片圆角处理 roundPic 将图片生成圆角图片,并且可以指定图片的圆角大小。
图片主色调 imageAve 用于计算一幅图片的平均色调。
动图合成 animate 用于将数张图片合成 GIF。
图片全景拼接服务 stitch 可以帮助您将多张图像拼接起来,拼成一幅大的图像来创建全景图像。

Excel

根据索引(位置)截取字符串

MID(字符串, 开始位置, 提取长度)
函数:MID

=MID(字符串, 开始位置, 提取长度)

=MID("获得", 5, 4)
A B
1 身份证 出生年
2 110110201201158888 2012
3 110110201501158888 2015
4 110110201601158888 2016

选中 B2 单元格 输入函数

=MID(A2, 7, 4)

结果:2012

将多个文本串联起来

函数: CONCATENATE

=CONCATENATE(字符串1, [字符串2, …])

=CONCATENATE("您好", "再见")

可以结果 MID 函数综合使用一下

A B
1 身份证 出生年月日
2 110110201201158888 2012-09-03
3 110110201501158888 2015-01-15
4 110110201601158888 2016-01-15

选中 B2 单元格 输入函数

=CONCATENATE(MID(A2, 7, 4), "-", MID(A2, 11, 2), "-", MID(A2, 13, 2))

结果: 2012-09-03

根据日期返回星期

=CHOOSE(WEEKDAY(B3, 2), "一", "二", "三", "四", "五", "六", "日")
A B
1 2021-10-01
2 2021-10-02
3 2021-10-03
4 2021-10-04
6 2021-10-05
7 2021-10-06
8 2021-10-07

根据关键词设定设定进度

函数: IF

=IF(A1="待开发","0",IF(A1="静态开发中","0.15",IF(A1="静态完成","0.30",IF(A1="后管静态开发中","0.55",IF(A1="后管静态完成","0.70",IF(A1="动态联调中","0.85","1"))))))
IF(A1="待开发",
    "0",
    IF(A1="静态开发中",
        "0.15",
        IF(A1="静态完成",
            "0.30",
            IF(A1="后管静态开发中",
                "0.55",
                IF(A1="后管静态完成",
                    "0.70",
                    IF(A1="动态联调中",
                        "0.85",
                        "1"
                    )
                )
            )
        )
    )
)
A B
1 待开发 0
2 静态开发中 0.15
3 静态完成 0.30
4 后管静态开发中 0.55
4 后管静态完成 0.70
5 动态联调中 0.85
5 完成 1

将日期转化为星期

函数: TEXT

=TEXT(A1, "AAAA")
A B
1 2022/6/1 星期三
2 2022/6/18 星期六

常用示例

公式 说明
=TEXT(1234.567, "$#,##0.00") 货币带有 1 个千位分隔符和 2 个小数,如 $1,234.57。 请注意,Excel 将该值四舍五入到小数点后两位。
=TEXT(TODAY(),"MM/DD/YY") 目前日期采用 YY/MM/DD 格式,如 12/03/14
=TEXT(TODAY(), "DDDD") 一周中的当天,如周日
=TEXT(NOW(), "H:MM AM/PM") 当前时间,如下午 1:29
=TEXT(0.285, "0.0%") 百分比,如 28.5%
=TEXT(4.34 , "# ?/?") 分数,如 4 1/3
=TRIM(TEXT(0.34, "# ?/?")) 分数,如 1/3。 注意,这将使用 TRIM 函数删除带十进制值的前导空格。
=TEXT(12200000, "0.00E+00") 科学记数法,如 1.22E+07
=TEXT(1234567898, "[<=9999999]###-####;(###) ###-####") 特殊(电话号码),如 (123) 456-7898
=TEXT(1234, "0000000") 添加前导零 (0),如 0001234
=TEXT(123456, "##0° 00' 00''") 自定义 – 纬度/经度

注意: 虽然可使用 TEXT 函数更改格式,但这不是唯一的方法。 你可以通过按 CTRL+1 (或在 Mac 上按 MAC Command 按钮图标的图像+1)来更改不带公式的格式,然后在设置单元格 > 数字对话框中选择所需的格式。