william

Keep Calm and Markdown.

nvim 基于buffer的文本补全

nvim 可以通过插件lsp实现基于编程语法的自动补全。而对于一般的文本,lsp 就无助于事了。这时候我们需要一个基于文本分析的自动补全功能。这个可以通过 echasnovski/mini.nvim 来实现

nvim 自动备份 lazy lock.json

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
-- backup: lazy-lazy.json
local lazy_cmds = vim.api.nvim_create_augroup('lazy_cmds', {clear = true})
local root = os.getenv("HOME") .. "/.config/nvim/lazy"
local snapshot_dir = root .. '/plugin-snapshot'
os.execute("mkdir " .. snapshot_dir)
local lockfile = root .. '/lazy-lock.json'
vim.api.nvim_create_user_command(
    'BrowseSnapshots',
    'edit ' .. snapshot_dir,
    {}
)
vim.api.nvim_create_autocmd('User', {
    group = lazy_cmds,
    pattern = 'LazyUpdatePre',
    desc = 'Backup lazy.nvim lockfile',
    callback = function(event)
        vim.fn.mkdir(snapshot_dir, 'p')
        local snapshot = snapshot_dir .. os.date('/%Y-%m-%dT%H:%M:%S.lazy-lock.json')
        vim.loop.fs_copyfile(lockfile, snapshot)
    end,
})
  • :Lazy restore

glibc2.18 安装

先查看当前系统的 glibc 版本

1
2
3
4
5
6
locate libc.so                                                                                                                                                                               [16:20:29]

/usr/lib64/libc.so
/usr/lib64/libc.so.6
/usr/local/glibc-2.34/lib/libc.so
/usr/local/glibc-2.34/lib/libc.so.6

当前系统使用的 glibc 动态库在 /usr/lib64/libc.so.6。我们可以使用命令 strings 查看动态库的版本信息

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
strings /usr/lib64/libc.so.6 |egrep '^GLIBC_2.' |sort                                                                                                                                        [16:19:55]
GLIBC_2.10
GLIBC_2.10
GLIBC_2.11
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_2.16
GLIBC_2.16
GLIBC_2.17
GLIBC_2.17
GLIBC_2.18
GLIBC_2.18
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.5
GLIBC_2.6
GLIBC_2.6
GLIBC_2.7
GLIBC_2.7
GLIBC_2.8
GLIBC_2.8
GLIBC_2.9
GLIBC_2.9

g++ 获取编译时间

gcc/g++ 提供编译日期,可以通过获取日期,进行相关判断。

1
2
const char *months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug",
                        "Sep", "Oct", "Nov", "Dec"};
0%