LaTeX参考文献工具和宏包bibmap项目简介
LaTeX参考文献工具和宏包bibmap项目简介
LaTeX 中的参考文献生成方式主要有三种:第一种是手动写thebibliography环境的,第二种事基于bibtex程序的,第三种则是基于biblatex宏包和biber程序的。本文介绍的bibmap项目则提供了第四种方法。目前bibmap宏包更新到2.0版后,已经完全实现了“使宏包极致简单”的设计思路,常用功能已经基本完善,详见 bibmap,欢迎大家使用并提供相关意见。
bibmap项目
bibmap项目是一个用于在latex中处理参考文献的工具,
包含一个sty文件(即宏包),用于设置参考文献处理时的选项;
一个bibmap程序(即后端程序),用于在后端处理参考文献数据。
bibmap 宏包和后端
bibmap宏包提供了完整的参考文献功能,用于latex参考文献标注和文献表的生成,支持分章参考文献、表格文献表、双语对照文献表、多种样式的标注命令等最常用功能。bibmap宏包的工作原理有点类似biblatex,但又是极度简化的,目的是直接利用后端程序结合样式设置获得满足格式要求的著录表和标注标签内容,即避免像biblatex那样需要利用大量的latex内部宏来实现格式设置,
也不再利用natbib等宏包解析bbl信息以设置标注标签。
bibmap后端程序类似bibtex/biber程序用于处理参考文献数据,其输出也是bbl文件,包含著录表信息(即latex直接能用的thebibliography环境)以及不同的引用命令的标注内容信息(即各个引用命令对应的格式化内容,由bibmap宏包读取后直接输出)。bibmap后端与biber的最大区别是,biber输出biblatex能识别和处理的特定协议的文献信息,而bibmap输出的全部是格式化后的可用于latex直接输出的信息。bibmap后端与bibtex的最大差别在于,bibmap格式化文献表所用的样式文件是python数据和代码,更简单易懂,目的是让用户可以更方便的设置参考文献格式,而不用去设计语法复杂的bst文件。
bibmap 的设计思路和优势
bibmap宏包延续了利用外部工具处理数据并通过文件为latex提供信息的思路来生成或处理参考文献,但期望走得更极致即尽可能的利用外部工具获得满足格式要求的信息,从而简化latex宏包方面的工作。其核心创新点或优势用一个词来描述就是追求极致简单。具体表现为:
-
利用python写后端用于处理参考文献简单易懂便于维护和扩展
-
格式由python数据结构的信息来设定避免如bst语言的复杂语法
-
著录和标注格式尽可能用后端程序生成避免复杂的latex宏设计
bibmap 的使用
目前附带的bibmap程序主要是python源代码,可以直接用命令python bibmap.py jobname来运行bibmap.py程序。在windows下可以利用打包成的bibmap.exe程序,其它系统用户可自行打包成可执行程序。
bibmap的各个目录下提供了各种测试文件,windows下运行 maketest.bat 可以进行测试。
更具体的使用说明,详见bibmap.PDF
ps
latex生成参考文献的方法可能是不准确的,应该还有一种,即使用citeproc-lua和csl样式的方法,这种方法也是比较新的,我最近没有深入了解,所以刚写文档的时候忘了。后面再完善一下。
相关文章:
LaTeX参考文献工具和宏包bibmap项目简介
LaTeX参考文献工具和宏包bibmap项目简介 LaTeX 中的参考文献生成方式主要有三种:第一种是手动写thebibliography环境的,第二种事基于bibtex程序的,第三种则是基于biblatex宏包和biber程序的。本文介绍的bibmap项目则提供了第四种方法。目前b…...
微软的 Drasi:一种轻量级的事件驱动编程方法
微软的开源数据变化处理平台有望提供一种全新的方式来构建和管理可产生持续事件流的云应用程序。 Microsoft Azure 孵化团队是微软超大规模云中比较有趣的组成部分之一。它介于传统软件开发团队和研究组织之间,致力于构建大规模分布式系统问题的解决方案。 这些解决…...
vue3 笔记-插槽
结构类似的模块,我们可以考虑用插槽,以便后续复用: 代码: 1.插槽 <script setup> defineProps({title: {required: true,type: String},number: {required: true,type: Number} }) </script><template><d…...
C# 字符串常用方法
文章目录 Length:获取字符串中字符的个数(不包括末尾的空字符)ToLower() 和 ToUpper():将字符串转换为小写或大写形式Substring(int startIndex, int length):从指定索引开始截取指定长度的子字符串Remove(int startIn…...
字节跳动青训营——入营考核解答(持续更新中~~~)
考核内容: 在指定的题库中自主选择不少于 15 道算法题并完成解题,其中题目难度分配如下: 简单题不少于 10 道中等题不少于 4 道困难题不少于 1 道 解答代码 8.进制求和转换(难) 代码实现: import jav…...
JavaWeb合集15-Apache POI
十五、Apache POI Apache POI是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用POI在Java 序中对Miscrosoft Office各种文件进行读写操作。一般情况下,POI都是用于操作Excel文件。 使用场景:银行网银系统导出交…...
Threejs 实现3D 地图(01)创建基本场景
"d3": "^7.9.0", "three": "^0.169.0", "vue": "^3.5.10" <script setup> import { onMounted,ref } from vue import * as THREE from three import * as d3 from "d3"; //莫开托坐标 矫正地图…...
snmpdelta使用说明
1.snmpdelta介绍 snmpdelta命令是用来获取下一个节点的OID的值。 2.snmpdelta安装 1.snmpdelta安装 命令: yum -y install net-snmp net-snmp-utils [root@logstash ~]# yum -y install net-snmp net-snmp-utils Loaded plugins: fastestmirror Loading mirror speeds f…...
Hadoop集群安装
集群规划 node01node02node03角色主节点从节点从节点NameNode√DataNode√√√ResourceManager√NodeManager√√√SecondaryNameNode√Historyserver√ 上传安装包到node01 解压到指定目录 tar -zxvf /bigdata/soft/hadoop-3.3.3.tar.gz -C /bigdata/server/ 创建软链接 cd…...
VuePress集成到Vue项目的方法
VuePress 可以作为一个独立的静态站点生成器来使用,也可以集成到现有的 Vue 项目中。以下是将 VuePress 集成到 Vue 项目的几种方法: 1. 作为本地依赖集成 如果你想在现有的 Vue 项目中使用 VuePress 来管理文档,你可以将 VuePress 安装为本…...
【ROS】ROS局域网下多机通讯方法
最近工作中需要用到多机通讯,这里稍微总结一下使用方法。 目录 一、网络配置 二、修改两个设备的hosts文件 三、修改两个ros设备的.bashrc 四、launch文件中给节点设定运行的设备 一、网络配置 首先确保两个ros设备连接到同一局域网下,然后查询两个…...
linux 系统怎么使用
Linux系统的使用涉及多个方面,包括文件管理、目录操作、用户管理、进程管理、网络配置等。以下是对Linux系统基础使用的详细介绍: 一、文件管理 查看文件和目录 ls:列出当前目录的内容。ls -l:以长格式列出当前目录的内容&#x…...
Java线程池知识点梳理
Java线程池知识点梳理 什么是线程池? 线程在系统中创建的成本是相对比较高的,所以使用”池化“的思想,设计线程池,有大量任务需要执行时,可以直接从线程池中使用已经创建好的线程直接去执行。减少线程的创建和销毁带…...
SFT、RLHF、DPO、IFT —— LLM 微调的进化之路_如何搭建自己的dpo
TL;DR • SFT、RLHF 和 DPO 都是先估计 LLMs 本身的偏好,再与人类的偏好进行对齐; • SFT 只通过 LLMs 生成的下一个单词进行估计,而 RLHF 和 DPO 通过 LLMs 生成的完整句子进行估计,显然后者的估计会更准确; • 虽然…...
CSS 选择器简单回顾
引言 当我们探讨网页设计和开发时, CSS(层叠样式表) 无疑是一个不可或缺的技术, 它使我们能够精确控制网页的外观和布局, 为用户创造出独特的视觉体验、以及良好的交互体验!! 而一个完整的 CSS 规则则是由两个主要部分组成: 选择器和声明块 那么今天我们就来盘点下常见的几种选…...
uniapp配置微信小程序分包(分包优化)
1.manifest.json中 源码视图中找到mp-weixin,新增代码"optimization":{"subPackages":true},如下图所示 "optimization" : {"subPackages" : true } 2.pages.json中 分包内静态文件示例 "subPackages&…...
MySQL-10.DML-添加数据insert
一.DML(INSERT) -- DDL:数据操作语言 -- DML:插入数据 - insert -- 1.为tb_emp表的username,name,gender字段插入值 insert into tb_emp (username,name,gender) values (wuji,无忌,1); -- 这样会报错,因为create_ti…...
ARM/Linux嵌入式面经(四八):tp-link联洲国际
文章目录 1. **模电基础**:请解释共射电路的工作原理,并描述如何计算其放大倍数。工作原理放大倍数计算面试官追问及回答2. **DCDC损耗**:有哪些方法可以降低DCDC转换器的损耗?3. **示波器使用**:如何用示波器正确测量DCDC的开关纹波?4. **IIC通信**:IIC通信协议中是否需…...
代码实践篇四 形状检测与规则重建
本节内容主要涉及形状检测(Shape Detection)与形状重建(Shape Reconstruction),具体算法步骤会在后续章节介绍。CGAL在6.0重点更新了形状重建部分的一些模块——动态空间分割与动态形状重建等,也会在后续详…...
JVM(HotSpot):GC之垃圾回收阶段
文章目录 前言一、标记清除算法(Mark Sweep)二、标记整理算法(Mark Compact)三、复制算法(Copy) 前言 标记出垃圾对象之后,就要进行清理。 那么,如何清理? 这里也有相应的算法。 主要有三种。 一、标记清除算法(Mark Sweep) 原理说明&…...
Python MCP服务器开发模板实战手册(含完整CI/CD流水线与OpenTelemetry集成)
第一章:Python MCP服务器开发模板概览与核心设计理念Python MCP(Model-Controller-Protocol)服务器开发模板是一套面向协议驱动、可插拔架构的轻量级服务框架,专为构建高内聚、低耦合的远程过程调用(RPC)与…...
智能体公司的发展都会变成解决方案型公司
当前AI智能体公司众多,但多数难以持续盈利。主要原因在于AI本质是工具,仅能解放生产力而非解决生产关系,对业务直接收入提升有限;其次,多数团队缺乏行业经验,商业模式局限于传统互联网模式,难以…...
新手福音:在ubuntu上用快马ai生成你的第一个python猜数字游戏
作为一个刚接触Ubuntu和Python编程的新手,第一次在命令行里跑起自己写的程序时那种成就感,相信很多人都有共鸣。今天就用InsCode(快马)平台的AI辅助功能,带大家零基础实现一个经典的数字猜谜游戏。整个过程完全在Ubuntu终端完成,不…...
别再删容器重装了!Docker运行n8n工作流的正确姿势:从环境变量到数据持久化
Docker部署n8n工作流:从环境变量配置到持久化存储的完整实践指南 遇到n8n的Secure Cookie警告就删容器重装?这种简单粗暴的操作不仅低效,还可能丢失关键数据。本文将带你深入理解Docker部署n8n的正确方法论,从环境变量配置到数据…...
混合储能系统容量优化配置中的信号分解与容量分配算法解析
混合储能容量优化配置(钠硫电池、超级电容) 基于emd和vmd容量配置 1、先用vmd进行输入功率分解,通过分解出高频信号和低频信号,混合储能的功率分配,分给钠硫电池、超级电容。 2、分解后再求出储能的额定容量和额定功率…...
ADC前端模拟电路设计
对自己工作的一个总结...
STM32CubeMX配置RT-Thread Nano:从零构建到任务与内存管理实战
1. 环境准备与基础工程搭建 第一次接触STM32CubeMX和RT-Thread Nano时,我完全按照官方文档操作却踩了不少坑。这里分享一个经过实战验证的配置流程,适用于STM32H7系列(其他型号也类似)。你需要准备: STM32CubeMX 6.12.…...
LC滤波器选型避坑指南:为什么你的高频噪声总是滤不干净?
LC滤波器选型避坑指南:为什么你的高频噪声总是滤不干净? 作为硬件工程师,你是否遇到过这样的场景:精心设计的LC滤波器在低频段表现良好,一到高频就"原形毕露"?那些恼人的射频噪声像幽灵一样在电路…...
行业内GEO优化服务哪家可靠
行业内可靠的GEO优化服务之选在当今数字化时代,随着用户搜索习惯从传统搜索引擎向生成式AI平台转型,企业面临着传统SEO/社媒营销失效、品牌曝光锐减等问题。GEO(生成式引擎优化)优化服务成为企业抢占AI搜索流量高地的关键。那么&a…...
如何快速提升技术文档专业度:Obsidian代码美化插件终极指南
如何快速提升技术文档专业度:Obsidian代码美化插件终极指南 【免费下载链接】obsidian-better-codeblock Add title, line number to Obsidian code block 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-better-codeblock 还在为技术笔记中单调乏味…...
