From ecfbcb8c672984ff6337cd8e66856ffc8ac3d496 Mon Sep 17 00:00:00 2001 From: laoyang Date: Tue, 27 Oct 2026 15:04:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=80=E5=8E=86=E8=BD=AF=E8=91=97/=E8=BD=AC?= =?UTF-8?q?=E5=8C=96/=E6=95=99=E7=A0=94=E6=94=B9=E4=B8=BA=E5=85=A8?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E7=BB=9F=E8=AE=A1=EF=BC=8CREADME=20=E8=A1=A5?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E8=AF=B4=E6=98=8E=20#15?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增 cvlist 环境:进入环境后每个 \item 自动 +1,条目里一个标记都不用写。 三节各只改两行(itemize → cvlist{类别}),删掉全部 15 处 \cvmark。 \begin{cvlist}{软著} \item 某某系统. 2024SR9999901. ... \end{cvlist} 概述:登记软件著作权 \cvnum{软著} 项 实测:加 1 条 → 概述自动 5→6;删 2 条 → 自动 5→3;还原 → 回 5。 版面与基线逐行完全一致(66/75/34 行)——cvlist 内部就是普通 itemize。 普通 itemize 不受影响(实测 3 条子项未被误计)。 专利、科研项目仍用逐条 \cvmark:它们一条要算两个类别 (专利+第一发明人、科研项目+主持/负责),cvlist 一次只能管一类。 README 新增「先回答一个最常问的问题:它是全自动的吗?」用表格直接回答 三种写法的差别,并补「全自动写法」「半自动写法」「加一个全新的类别」 三个小节,含可直接抄的代码。 踩坑:\cvmark 内部用 \detokenize 处理类别名,传参前必须 \expandafter 展开 \cv@listcat,否则写进 .cvnum 的是字面串 "\cv@listcat"。 验证:0 error / 0 Overfull / 0 Underfull,3 页;全库回归与基线一致。 --- 简历/README.md | 125 ++++++++++++++++++++++++++--------- 简历/awesome-source-cv.cls | 72 ++++++++++++++++---- 简历/section_06_software.tex | 18 ++--- 简历/section_08_zhuanhua.tex | 14 ++-- 简历/section_09_jiaoyan.tex | 16 ++--- 简历/简历.pdf | Bin 574618 -> 574619 bytes 6 files changed, 177 insertions(+), 68 deletions(-) diff --git a/简历/README.md b/简历/README.md index 4a8fbf0..edebbc8 100644 --- a/简历/README.md +++ b/简历/README.md @@ -204,49 +204,114 @@ Pagella / XCharter 宽 7~11%,会把全库的断行推着变。 手写,每增删一条论文就得回头改概述,非常容易漏改。本模板让它们**自动从正文条目 数出来**。 -### 怎么用 +### 先回答一个最常问的问题:它是全自动的吗? -两步: +**分两种,取决于章节用哪种写法。** + +| 写法 | 要手动做什么 | 适合什么章节 | +|---|---|---| +| **`cvlist` 环境**(全自动) | **什么都不用做**。写 `\item` 就自动算一条。 | 一条 = 一个成果的章节:软著、成果转化、教研项目 | +| **`\cvmark` 逐条标记**(半自动) | 每条末尾加一个 `\cvmark{类别}` | 一条要算进**多个类别**的章节:专利(要同时算"专利"和"第一发明人")、科研项目(要同时算"科研项目"和"主持/负责") | +| **`\cvtagcount`**(半自动) | 每条末尾写 `\cvtagcount{SCI}`,替代原来的 `\textbf{SCI}` | 论文(收录类型本来就要显示出来,顺手计数) | + +也就是说:**三个你关心的章节(软著、成果转化、教研项目)已经是全自动的,不需要 +任何标记。** 增删条目后重新编译,概述里的数字自己就变了。 + +### 全自动写法:`cvlist` 环境 + +这是最省事的方式。原来写 `\begin{itemize}`,现在改成 `\begin{cvlist}{类别}`, +其他一个字都不用动: ```latex -% ① 在每个条目末尾标类别(不产生任何可见输出) -\item ...论文信息... \cvtagcount{SCI} % 显示 SCI,同时 SCI +1 -\item ...论文信息... \cvmark{软著} % 只计数,不显示 +% 软著章节 +\sectionTitle{软件著作权}{\faTv} +\begin{cvlist}{软著} % ← 只改这一行(原来是 itemize) + \item 某某系统. 2024SR9999901. 软著登字第 9999901 号. + \item 另一个系统. 2023SR9999902. 软著登字第 9999902 号. +\end{cvlist} % ← 和这一行(原来是 \end{itemize}) -% ② 概述里取数 -发表论文 \cvnum*{SCI,EI,核心} 篇(SCI \cvnum{SCI} 篇、EI \cvnum{EI} 篇), -登记软件著作权 \cvnum{软著} 项 +% 概述里 +登记软件著作权 \cvnum{软著} 项 % → 自动印出「2」 ``` -`\cvnum{A,B}`(带星号)是多类求和;`\cvnum{A}`(不带星号)是单类取数。 -**列几条就算几条**,不需要额外声明的总数。 +**就这样。** 以后加一条只是多写一个 `\item ...`,数字自动从 2 变 3; +删一条自动变 1。不需要回来改概述,也不需要在条目里加任何标记。 -空类别返回 `0` 而不是报错,所以可以先写 `\cvnum{EI}`,等真有了 EI 论文再加 -`\cvtagcount{EI}`,中间不会有编译问题。 +实测过的行为: -### 两个命令的分工 +| 操作 | 概述里的数字 | +|---|---| +| 原始 5 条 | 5 | +| 加 1 条 | **6**(自动) | +| 删 2 条(剩 3 条) | **3**(自动) | +| 还原 | 5 | -| 命令 | 显示 | 计数 | 用在哪 | -|---|---|---|---| -| `\cvmark{类别}` | 不显示 | +1 | 软著、专利、项目、转化、教研这类本来就靠字段表达类别的条目 | -| `\cvtagcount{类别}` | 显示(加粗,与正文同号) | +1 | 论文的 SCI/EI/核心——原本就用 `\textbf{SCI}` 缀在末尾,一步到位 | +⚠️ `cvlist` 内部就是普通 `itemize`,**版面完全不变**(已逐行比对过,行数、 +位置一字不差)。 -`\cvtagcount` 就是为论文设计的:显示和计数合成一个动作,不会出现「改了显示忘了 -计数」的情况。 +⚠️ 不要在 `cvlist` 里再嵌套 `itemize` 写子项——子项的 `\item` 也会被算进去, +数字会偏大。需要子项就用普通 `itemize` + 手写 `\cvmark`。 + +### 半自动写法:`\cvmark` 与 `\cvtagcount` + +有些章节一条要算进**两个**类别,`cvlist` 一次只能管一个类别,这时用逐条标记。 + +```latex +% 专利:一条既算「专利」又可能要算「第一发明人」 +\item \textbf{张远航}, 李文博, 陈思远. 某某方法. ZL209999000001.9. 2024-05-14. + \cvmark{专利}\cvmark{第一发明人} % ← 加标记(不产生可见输出) + +% 论文:收录类型本来就要显示,用 \cvtagcount 一步到位 +\item \textbf{张远航}, 李文博. 某某论文. IEEE TGRS, 62, 1, (2024), 1--15. + DOI: 10.9999/TGRS.2024.0000001.\cvtagcount{SCI} % ← 显示 SCI 并计数 +``` + +`\cvtagcount{SCI}` 等价于「印出加粗的 SCI」+「SCI 计数 +1」,所以**不要**写回 +`\textbf{SCI}`——那样只显示不计数,概述会少算。 + +⚠️ 这种写法下,增删条目时**标记要跟着走**。删掉一条论文但留下 `\cvtagcount{SCI}`, +数字就会多算一个。这是它的代价;能用 `cvlist` 的章节就别用这种。 ### 现有类别一览 -| 类别 | 标记位置 | 概述里的用法 | -|---|---|---| -| `SCI` `EI` `核心` | `section_04` 各条目末尾 `\cvtagcount{}` | `\cvnum*{SCI,EI,核心}` | -| `专利` `第一发明人` | `section_05` 各条目末尾 `\cvmark{}` | `\cvnum{专利}` / `\cvnum{第一发明人}` | -| `软著` | `section_06` | `\cvnum{软著}` | -| `科研项目` `主持` `负责` | `section_07` 描述块内 | `\cvnum{主持}` / `\cvnum{负责}` | -| `转化` | `section_08` | `\cvnum{转化}` | -| `教研` | `section_09` | `\cvnum{教研}` | +| 类别 | 章节 | 写法 | 概述里的用法 | +|---|---|---|---| +| `SCI` `EI` `核心` | `section_04` 论文 | `\cvtagcount{}` 每条末尾 | `\cvnum*{SCI,EI,核心}` | +| `专利` `第一发明人` | `section_05` 专利 | `\cvmark{}` 每条末尾 | `\cvnum{专利}` / `\cvnum{第一发明人}` | +| `软著` | `section_06` 软著 | **`cvlist` 全自动** | `\cvnum{软著}` | +| `科研项目` `主持` `负责` | `section_07` 项目 | `\cvmark{}` 描述块内 | `\cvnum{主持}` / `\cvnum{负责}` | +| `转化` | `section_08` 成果转化 | **`cvlist` 全自动** | `\cvnum{转化}` | +| `教研` | `section_09` 教研项目 | **`cvlist` 全自动** | `\cvnum{教研}` | -⚠️ 增删条目时**标记要跟着走**。删掉一条论文但留下 `\cvtagcount{SCI}`,数字就会 -多算一个——这是这套机制唯一的代价,但比每次回头数一遍要可靠得多。 +### 概述里怎么取数 + +```latex +\cvnum{软著} % 单类:印出数字,没这个类别就印 0 +\cvnum*{SCI,EI,核心} % 多类求和(注意是英文逗号) +``` + +**列几条就算几条**,不需要额外声明总数。空类别返回 `0` 而不是报错,所以可以先 +写 `\cvnum{EI}`,等真有了 EI 论文再加 `\cvtagcount{EI}`,中间不会有编译问题。 + +### 加一个全新的类别 + +比如想统计「一区论文」,三步: + +```latex +% ① 条目上标记(论文类用 cvtagcount,其他用 cvmark) +\item ...论文... \cvtagcount{一区} + +% ② 概述里取数(不用任何注册,直接写) +其中一区论文 \cvnum{一区} 篇 + +% ③ 编译两遍 +``` + +类别名是**随用随建**的,不需要预先声明。`\cvnum*{一区,SCI}` 这种求和也可以 +直接用。 + +⚠️ 类别名不要含英文逗号(`,` 是 `\cvnum*` 的分隔符)、不要含 `@ % # \ { }`。 +中文、英文、空格都可以。 ### 三条必须知道的限制 @@ -275,7 +340,7 @@ Pagella / XCharter 宽 7~11%,会把全库的断行推着变。 - 若你的正文就是全部成果,自动统计的数字才是真实总量 用之前先想清楚自己属于哪种。要保留「40 余篇」这种总量表述,就把那处数字改回 -手写,只在真正列全的章节(转化、教研这类)用 `\cvnum`。 +手写,只在真正列全的章节(软著、转化、教研这类)用 `\cvnum`。 ## 写的时候容易踩的三个坑 diff --git a/简历/awesome-source-cv.cls b/简历/awesome-source-cv.cls index 47e1107..18469f0 100644 --- a/简历/awesome-source-cv.cls +++ b/简历/awesome-source-cv.cls @@ -639,23 +639,30 @@ % 问题:简历第一段概述通常写「发表论文 40 余篇、授权专利 12 项、成果转化 % 3 项……」。这些数字若手写,每增删一条论文就得回头改概述,极易漏改。 % -% 思路:给每条加一个**类别标记** \cvmark, 正文里自动累加计数,概述用 -% \cvnum 取数。**列几条就算几条**,不去猜总数——你不列出来的成果 -% 本来也不该出现在概述里。 +% 思路:正文里计数,概述用 \cvnum 取数。**列几条就算几条**,不去猜总数—— +% 你不列出来的成果本来也不该出现在概述里。 % -% 用法(两步): -% ① 每个条目末尾标类别: -% \item ...论文信息... \cvmark{SCI} -% \item ...论文信息... \cvmark{EI} -% \cvmark 不产生任何可见输出(就是个计数动作),放条目首尾都行。 -% 一条属于两类就标两次;同名类别重复标会自动累加。 +% 两种写法,按「一条算几类」选: % -% ② 概述里取数: -% \cvnum{SCI} 篇、\cvnum{EI} 篇、合计 \cvnum*{SCI,EI} 篇 -% \cvnum* 是「多类求和」,逗号分隔(注意:是英文逗号)。 +% 【全自动】cvlist 环境 —— 一条 = 一个成果时用,**条目里什么都不用写** +% \begin{cvlist}{软著} +% \item 某某系统...登记号... +% \item 另一个系统... +% \end{cvlist} +% 每多一个 \item 自动 +1。增删条目完全不用管标记。 +% 目前用于:软著(section_06)、成果转化(section_08)、教研(section_09)。 % -% ③ 空类别返回 0,不会出现 ??。所以可以先写 \cvnum{EI}, -% 等真有了 EI 论文再加 \cvmark{EI},中间不会编译报错。 +% 【半自动】逐条标记 —— 一条要算进多个类别时用 +% \cvmark{类别} 只计数,不显示(专利、科研项目用) +% \cvtagcount{类别} 显示加粗文字 + 计数(论文的 SCI/EI/核心用) +% 专利一条要同时算「专利」和「第一发明人」,项目要同时算 +% 「科研项目」和「主持/负责」,cvlist 一次只能管一类,故用标记。 +% +% 【概述取数】两种写法统一: +% \cvnum{类别} 单类 +% \cvnum*{A,B} 多类求和(英文逗号) +% 空类别返回 0,不会出现 ??,所以可以先写 \cvnum{EI} 再加标记。 +% 类别名随用随建,不需要预先注册。 % % ⚠️ 为什么用独立数据文件而不是 LaTeX 的 aux: % 实测中文键经 aux 往返后 \ifcsname 全部匹配不上(xeCJK 把汉字设为 @@ -708,6 +715,43 @@ {}% } +% ---- 自动计数列表环境:cvlist -------------------------------------- +% \begin{cvlist}{<类别>} ... \end{cvlist} +% +% 进入环境后,**每个 \item 自动 +1**,不需要在条目里写 \cvmark。 +% 这是最省事也最不容易漏的方式:增删条目完全不用管标记。 +% +% 适用于「一条就是一个成果、章节条目数就是总数」的章节: +% 软件著作权、成果转化、教研项目、专利(见下)、奖励…… +% 不适用于「一条里含多个类别」的场景(比如论文一条要同时算 SCI 和总篇数), +% 那种仍用 \cvtagcount / \cvmark 逐条标。 +% +% 用法: +% \begin{cvlist}{软著} +% \item 某系统...登记号... +% \item 另一个系统... +% \end{cvlist} +% 概述里写 \cvnum{软著} → 2 +% +% ⚠️ 环境内部就是普通 itemize,版式完全不变(\begin{itemize} 包在里面)。 +% ⚠️ 不能在 cvlist 里再嵌套 itemize 写子项——子项的 \item 也会被算进去。 +% 需要子项就用普通 itemize + 手写 \cvmark。 +\newenvironment{cvlist}[1]{% + \cvlistcat{#1}% + \begin{itemize}% +}{% + \end{itemize}% +} + +% 记录当前 cvlist 的类别;\item 被重定义成「先计数再走原 \item」 +% ⚠️ \cvmark 内部用 \detokenize 处理类别名,所以必须先把 \cv@listcat +% **展开成实际文字**再传进去;否则写进 .cvnum 的是字面串 "\cv@listcat"。 +\newcommand\cvlistcat[1]{% + \def\cv@listcat{#1}% + \let\cv@origitem\item + \renewcommand\item{\expandafter\cvmark\expandafter{\cv@listcat}\cv@origitem}% +} + % ---- 输出 ---------------------------------------------------------- % \cvnum{SCI} 单类取数 % \cvnum*{SCI,EI} 多类求和 diff --git a/简历/section_06_software.tex b/简历/section_06_software.tex index 388f2a9..ea92ed5 100644 --- a/简历/section_06_software.tex +++ b/简历/section_06_software.tex @@ -8,17 +8,17 @@ % 示例统一用 999999 段,一眼可辨是假号。 % 开发人员多于 6 人时可以考虑只列前几位加「等」,避免单条过长折行。 % -% ⚠️ 每条末尾的 \cvmark{软著} 是计数标记,不产生可见输出, -% 供概述的 \cvnum{软著} 取数。增删条目时标记要跟着走。 +% ⚠️ 用 cvlist 环境自动计数:每多一个 \item,概述里的 \cvnum{软著} 就自动 +1。 +% 增删条目**什么都不用改**,数字自己会跟上。 \sectionTitle{软件著作权}{\faTv} -\begin{itemize} +\begin{cvlist}{软著} \item \textbf{张远航}, 李文博, 陈思远, 王海涛, 刘洋, 赵明轩, 孙悦, 周建华. - 近岸海域叶绿素浓度遥感反演系统. 2024. 2024SR9999901. 软著登字第 9999901 号.\cvmark{软著} + 近岸海域叶绿素浓度遥感反演系统. 2024. 2024SR9999901. 软著登字第 9999901 号. \item \textbf{张远航}, 陈思远, 王海涛, 李文博, 吴晓峰, 郑凯. - 多源海洋观测数据融合与质量控制检索系统. 2023. 2023SR9999902. 软著登字第 9999902 号.\cvmark{软著} - \item \textbf{张远航}, 刘洋, 赵明轩. 海洋要素智能订正与预报后处理平台. 2023. 2023SR9999903. 软著登字第 9999903 号.\cvmark{软著} - \item 李文博, \textbf{张远航}, 孙悦. 浮标观测序列异常检测与修复系统. 2022. 2022SR9999904. 软著登字第 9999904 号.\cvmark{软著} - \item \textbf{张远航}, 周建华. 海洋卫星遥感影像云检测预处理系统. 2021. 2021SR9999905. 软著登字第 9999905 号.\cvmark{软著} -\end{itemize} \ No newline at end of file + 多源海洋观测数据融合与质量控制检索系统. 2023. 2023SR9999902. 软著登字第 9999902 号. + \item \textbf{张远航}, 刘洋, 赵明轩. 海洋要素智能订正与预报后处理平台. 2023. 2023SR9999903. 软著登字第 9999903 号. + \item 李文博, \textbf{张远航}, 孙悦. 浮标观测序列异常检测与修复系统. 2022. 2022SR9999904. 软著登字第 9999904 号. + \item \textbf{张远航}, 周建华. 海洋卫星遥感影像云检测预处理系统. 2021. 2021SR9999905. 软著登字第 9999905 号. +\end{cvlist} \ No newline at end of file diff --git a/简历/section_08_zhuanhua.tex b/简历/section_08_zhuanhua.tex index d188390..6a4ff3f 100644 --- a/简历/section_08_zhuanhua.tex +++ b/简历/section_08_zhuanhua.tex @@ -8,16 +8,16 @@ % 转化方式写清「专利权实施普通许可 / 转让 / 作价入股」,评职称时这一栏 % 比金额更被看重。 % -% ⚠️ 每条末尾的 \cvmark{转化} 是计数标记,不产生可见输出, -% 供概述的 \cvnum{转化} 取数。增删条目时标记要跟着走。 +% ⚠️ 用 cvlist 环境自动计数:每多一个 \item,概述里的 \cvnum{转化} 就自动 +1。 +% 增删条目**什么都不用改**,数字自己会跟上。 \sectionTitle{成果转化}{\faAmericanSignLanguageInterpreting} -\begin{itemize} +\begin{cvlist}{转化} \item \textbf{张远航}. 一种赤潮发生概率的时序预报方法. 专利权实施普通许可. - 青岛蓝湾海洋科技有限公司(示例). 2023年06月.\cvmark{转化} + 青岛蓝湾海洋科技有限公司(示例). 2023年06月. \item \textbf{张远航}. 基于物理约束神经网络的水质参数短期预测方法及系统. 专利权实施普通许可. - 山东海慧信息技术有限公司(示例). 2022年11月.\cvmark{转化} + 山东海慧信息技术有限公司(示例). 2022年11月. \item \textbf{张远航}. 面向近岸海域的遥感影像云检测与重建方法. 专利权实施普通许可. - 青岛海图数据科技股份有限公司(示例). 2022年04月.\cvmark{转化} -\end{itemize} \ No newline at end of file + 青岛海图数据科技股份有限公司(示例). 2022年04月. +\end{cvlist} \ No newline at end of file diff --git a/简历/section_09_jiaoyan.tex b/简历/section_09_jiaoyan.tex index 21766cd..f0287f6 100644 --- a/简历/section_09_jiaoyan.tex +++ b/简历/section_09_jiaoyan.tex @@ -6,16 +6,16 @@ % 每条格式:项目名称. 立项单位 + 项目类别. 起止时间. 本人角色. % 「主持 / 参与」不要省 —— 教学类项目主持人身份是评教学奖的硬指标。 % -% ⚠️ 每条末尾的 \cvmark{教研} 是计数标记,不产生可见输出, -% 供概述的 \cvnum{教研} 取数。增删条目时标记要跟着走。 +% ⚠️ 用 cvlist 环境自动计数:每多一个 \item,概述里的 \cvnum{教研} 就自动 +1。 +% 增删条目**什么都不用改**,数字自己会跟上。 \sectionTitle{教研项目}{\faGroup} -\begin{itemize} +\begin{cvlist}{教研} \item 海洋大数据分析案例库建设. 中国海洋大学研究生科研创新能力提升计划 - 专业学位研究生教学案例库建设项目. 2023.06 至今. 主持.\cvmark{教研} - \item 机器学习与海洋应用. 中国海洋大学 2022 年度教材建设基金重点项目. 2022.03 至今. 主持.\cvmark{教研} + 专业学位研究生教学案例库建设项目. 2023.06 至今. 主持. + \item 机器学习与海洋应用. 中国海洋大学 2022 年度教材建设基金重点项目. 2022.03 至今. 主持. \item 面向新工科的海洋信息类课程混合式教学模式改革. 中国海洋大学本科 - 教育教学研究一般项目. 2021.09 至 2023.08. 主持.\cvmark{教研} - \item 数据科学与海洋情怀. 信息科学与工程学部课程思政建设项目. 2021.03 至 2022.12. 主持.\cvmark{教研} -\end{itemize} \ No newline at end of file + 教育教学研究一般项目. 2021.09 至 2023.08. 主持. + \item 数据科学与海洋情怀. 信息科学与工程学部课程思政建设项目. 2021.03 至 2022.12. 主持. +\end{cvlist} \ No newline at end of file diff --git a/简历/简历.pdf b/简历/简历.pdf index aae011a181818dedb9f9fb5d02f849cbedc067a7..1706cfc588d72c33a369c857f70a00d8f8da76ec 100644 GIT binary patch delta 7178 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