自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (2)
  • 收藏
  • 关注

原创 pandoc 中将 asciimath 公式转换为 latex 公式

文章目录问题解决方法问题本人觉得 asciimath 的公式语法比 latex 的公式语法要简洁一下, 也对 asciimath 公式语法比较熟悉. 但是, pandoc markdown 文档中, 只能嵌入 latex 公式语法, 比如使用 latex 语法:$$\displaystyle f{{\left({x}\right)}}={\sum_{{{n}={0}}}^{\infty}}\frac{{{{f}^{{{\left({n}\right)}}}{\left({a}\right)}}}}{{

2020-07-14 02:26:15 692

原创 迁移到 go module

文章目录下载安装 golang.bashrc 设置开始新的工作其它如果一直工作于 < golang1.12, 然后现在工作于 > golang1.12, 并且使用 go module进行管理, 那么需要做一些工作.下载安装 golangwget https://dl.google.com/go/go1.14.4.linux-amd64.tar.gztar -C /usr/local -xzf go1.14.4.linux-amd64.tar.gzrm go1.14.4.linux-a

2020-06-15 22:52:16 301

原创 Lua 中的面向对象编程

面向对象编程中, 很重要的概念之一是隐含的 “this” 指针, 即有一个变量指代了自身.在 lua 中, 使用 “self” 代表 “this”.--[[ (1)基本代码.--]]Account = {balance = 0}function Account.withdraw(v) Account.balance = Account.balance - vend--[[ ...

2019-10-14 20:23:38 358

翻译 pthread 编程

文章目录pthread api创建线程终止线程线程管理栈管理其它互斥量创建与销毁互斥量锁定与解锁互斥量条件变量创建与销毁条件变量等待与通知所有库函数pthread api对 pthread api 进行归类, 可以分为四类:线程管理直接工作于线程, 如创建, 分离, 加入 (join) 等, 也包括设置或查询线程属性(joinable, scheduling 等).互斥量处理...

2019-01-17 23:42:24 1024 1

原创 plantuml 之用例图(三)

切分设置图的方向分组切分切分当用例图很大时, 可以切分成多个部分.newpage切分后, 可以在 @startuml 后跟上路径与文件名. 比如 @startuml ./image.png, 假如切分成三个图, 则在指定路径下生成三个图文件, 分别为 “./image.png”, “./image001.png”, “./image002.png”.例如下...

2018-08-22 11:33:48 3094

原创 配置 vim 开发 lua

使用 vim 开发 lua 程序, 当前安装 3 个插件, 各个插件如何使用请点链接:luainspect.vim, 依赖 vim-misc 插件vim-miscvim-lua-ftplugin使用 vundle 作为 vim 插件管理器, 在 .vimrc 中添加并保存:Plugin 'vim-scripts/luainspect.vim'Plugin 'xolox/vim...

2018-08-09 09:46:50 3579

原创 Lua 安装

当前最新版本为 5.3.5.# 下载并解压 luawget -c http://www.lua.org/ftp/lua-5.3.5.tar.gztar xzf lua-5.3.5.tar.gz# 安装所需的库sudo apt -y install libreadline5sudo apt -y install libreadline-gplv2-dev# 编译 lua 并安...

2018-08-08 14:28:53 629

原创 plantuml 之用例图(二)

指定连接箭头方向添加注释构造型改变 actor 与用例背景色指定连接箭头方向下面的描述适用于 [连接] 和 [扩展].--&amp;gt; 改为 &amp;lt;-- 可改变方向默认时, 一个 - 为水平, 多个 - 为垂直left, right, up, down 关键字指定了连接方向效果见图 2-6. 图 2-6 图 2-6 代码@startuml...

2018-08-03 00:00:05 2400

原创 shell 中直接调用 vim 处理文档 / shell 脚本中调用 vim

shell 中直接调用 vim 处理文档下面命令中, cmd 总是当作 Ex 命令执行. 可以使用 “normal normal-cmd”.vim -e 'cmd' -e 'cmd' ... fileshell 脚本中调用 vim#! /bin/bashvi abc.txt &amp;amp;lt; EOF i # 进入 insert 模式...

2018-07-21 22:25:08 17446 12

原创 在终端中使用 solarized 配色

#- 第一步.git clone git://github.com/seebi/dircolors-solarized.gitcp ~/dircolors-solarized/dircolors.256dark ~/.dircolorseval 'dircolors .dircolors'#- 第二步. (先检查 echo $TERMvim .barshrcexport TERM=x...

2018-07-18 23:09:00 3401 2

原创 为 tagbar 增加 pandoc 类型文档显示

建立 .ctags在 ~/.ctags 中, 可以定义一门新语言的 ctags 产生标签的形式, 文件内容如下:--langdef=pandoc--langmap=pandoc:.pdc--regex-pandoc=/^%\s*(.*)/\1/t,title/--regex-pandoc=/^#[ \t]+(.*)/+ \1/h,heading/--regex-pandoc=...

2018-07-17 20:26:04 183

原创 使用 pandoc 创建幻灯片

pandoc 生成 beamer 幻灯片pandoc 中与特定于 beamer 相关的内容选项可传递的变量LaTeX 变量制作幻灯片本文描述利用 pandoc 产生成 beamer pdf 格式的幻灯版. 生成的 pdf 文件在浏览器中打开时幻灯片的控制效果非常好. 可选的, 也可以在, 也可以在 pdf 阅读器中打开, 然后使用 “放映” 模式进行播放.使...

2018-07-17 00:41:15 1336

原创 QProgressDialog 配合多线程并在子线程中启动外部进程

对于比较费时的任务, 即使配合 QProgressDialog 使用, 但界面仍有冻结. 较好的处理方式是将费时任务放到线程中去执行, 通过信号-槽机制刷新 QProgressDialog 的进度值.另外, 在子线程中可以启动外部进程, 并且可以将外部进程输出到控制台的数据读取到线程中.进度框界面 获取 ipconfig 命令输出"""Windows IP 配置"""...

2018-06-24 14:43:10 3479

原创 QTextEdit 特定行改变鼠标形状

问题由于需要, 在 QTextEdit 中需要对有文件路径的行, 在鼠标移动到路径上方时改变鼠标形状, 双击文件路径可以调用系统默认程序打开该文件.这里有两个要点:打开鼠标踪 setMouseTracking(true)获取鼠标下的行文本实现通过重载 void mouseMoveEvent(QMouseEvent *e) 来捕获鼠标事件, 具体代码如下// 行文...

2018-06-21 11:52:06 1064

原创 plantuml 之用例图(一)

用例actor用例描述连接扩展用例(NAME)usecase 关键字as 用于指定别名效果见图 2-1. 图 2-1 图 2-1 代码@startuml(&quot;基本语法&quot;)(&quot;as 别名&quot;) as (UC2)usecase &quot;usecase 命令&quot;usecase (&quot;usecase\n及 as 别名&qu

2018-06-17 18:28:56 7391 1

原创 plantuml 之序列图(四)

流入消息与流出消息构造型与 spot对参与者分组去除参与者底部方框改变文本与边框的填充空间流入消息与流出消息流入消息指流入序列图的消息, 并非由序列图中的参与者发出的; 流出消息指流出序列图的消息, 亦非由序列图中的参与者发出.在定义 消息箭头 的语法前或后加上 [ 或 ] 分别表示注入消息与流出消息.效果见图 1-20. 图 1-20 图 1...

2018-06-17 00:14:10 1746

原创 在 QT UI 编程中使用 QtConcurrent 和 QFutureWatcher 执行并发任务

问题在 QT 的 UI 编程中, 如果有一个函数消耗的时间特别长, 并且运行于主线程, 那么界面的响应会很不灵敏. 通常的作法是使用多线程编辑.另外, 如果该函数执行时间很长, 为了通知任务的进度, 一般会使用进度条. 但有时候无法准确的使用进度条, 比如在数据库操作中, 为了提高读写数据库的性能, 通常会采用事务操作, 多个读写数据库的操作合并成了一个事务, 此时如何设置进度条的进度值?...

2018-06-14 14:11:07 3092

原创 robotc 编程挑战 (12)

任务简介程序任务简介本文为 virtual world challenge pack 中的传感器(SENSORS) 中的 “Forward Until Near”, 如图 1 所示. 要求从起点 A 出发, 前进直到靠近红色木块然后停住. 因为超声波传感器装车尾, 所以此挑战实际上让车后退去靠近红色木块. 图 1 Forward Until Near 界面图 ...

2018-06-14 13:05:16 769

原创 robotc 编程挑战 (11)

任务简介程序任务简介本文为 virtual world challenge pack 中的传感器(SENSORS) 中的 “Touch Sensor Challenge”, 如图 1 所示. 要求从起点 A 出发, 前进至箱子处, 利用碰触传感器感知箱子, 并用使用前爪抓住箱子, 回到出发点. 图 1 Touch Sensor Challenge 界面图 ...

2018-06-11 14:52:26 1047 1

原创 plantuml 之序列图(三)

分隔序列图引用其它序列图延迟消息增加消息箭头上下间隔生命线激活与销毁创建参与者分隔序列图若序列图的各部分有明显的逻辑区分, 可以使用 ==== 或更多的个 = 对序列图进行分隔, 分隔中间可以加文本 ==TEXT==. 效果见图 1-13. 图 1-13 图 1-13 代码引用其它序列图对一个系统进行分解会形成多个序列图. 在某个序...

2018-05-26 20:39:18 1491

原创 plantuml 之序列图(二)

给自己发消息给消息编号序列图分页消息分组对消息进行注释说明改变注释图标形状给自己发消息参与者可以给自己发消息. 如图 1-6 所示. 图 1-6 图 1-6 代码 (摘自官方文档)@startuml' 若消息很长, 可以使用 "\n" 换行.' 消息默认是或对齐.' 参与者名称则是默认中间对齐.Alice-&gt;Alice: ...

2018-05-16 22:25:19 2903

原创 plantuml 之序列图(一)

参与者设置箭头颜色设置箭头风格给自己发消息给消息编号序列图主要包含有参与者及参与者之间的消息通信. 参与者不需要显式声明.消息流向使用 -&amp;gt; 表示, 此时绘制出实线箭头; --&amp;gt; 则绘制点线箭头. 若要绘制反向消息流向, 可以使用 &amp;lt;- 或 &amp;lt;--.消息文本跟在第二参与者之后, 用 : 隔开.图 1-1 代码 (摘自官方文档)@st...

2018-05-14 23:51:00 4242

原创 ev3 中一键切换控制模式

机器人简介孩子的思路更合理的思路带孩子做 ev3 机器人控制时碰到一个问题: 当机器人比较复杂, 当一个 ev3 的 5 个可编程按钮不足以控制机器人的运动时该怎么办?机器人简介孩子搭建的机器人如图 1 所示, 基本结构与功能如下:左轮与右轮各连接一个电机, 可以实现前进, 后退, 左拐, 右拐的动作.一支机械臂, 连接了一个电机, 机械臂可以抬起与放下.一...

2018-05-10 23:36:54 4065

原创 c++ 正则表达式

主要实体类算法迭代器常量其它主要实体之间的关系后记正则表达式在 c++11 中引入. 在 c++ 正则表达式库中, 主要包括一些类, 算法, 迭代器, 标识等. 在编写程序时, 调用的入口是正则表达式库中的算法和迭代器.主要实体类basic_regex正则表达式类, 封装了正则表达式字符串. 根据模板参数不同, 又可以分为 ...

2018-05-08 09:56:27 1302

原创 robotc 编程挑战 (10)

任务简介程序任务简介本文为 virtual world challenge pack 中的传感器(SENSORS) 中的 “Arm Position Challenge”, 如图 1 所示. 要求从起点 A 出发, 前进至箱子处, 然后使用前爪抓住箱子, 并回到出发点. 图 1 arm position challenge 界面图 此挑战使用的 robo...

2018-05-06 17:17:05 1164 3

原创 robotc 编程挑战 (9)

任务简介程序任务简介本文为 virtual world challenge pack 中的传感器(SENSORS) 中的 “vacuum”, 如图 1 所示. 要求从起点 A 出发, 当碰到场地一条边时就转向. 要求必须触碰到每条边. 场地的边开始的时候显示为绿色, 当触碰到边时, 边的绿色会消失.挑战名称为 “vacuum”, 意为吸尘器. 类似家用扫地机器人...

2018-05-03 11:15:08 1529

原创 robotc 编程挑战 (8)

任务简介程序从现在开始, 将使用到传感器, 涉及到对传感器的操作.任务简介本文为 virtual world challenge pack 中的传感器(SENSORS) 中的 “move untill touch”, 如图 1 所示. 要求从起点 A 出发一直前进, 直到碰到障碍物就停止前进. 图 1 move untill touch 界面图 此...

2018-05-02 14:46:40 598

原创 在 windows 下的某目录中右键打开 cygwin 终端

在 windows 操作系统中, 在当前目录下, 通过右键打开 cygwin 终端, 并且在终端中切换到当前目录.win + R, 运行 regedit在注册表编辑器中的 "HKEY_CLASSES_ROOT -&gt; Directory -&gt; Background -&gt; shell" 下添加 "cygwin -&gt; command"在 “cygwin” 下默认字符串...

2018-04-30 02:53:53 2212 3

原创 在 vim 中绘制 uml 图与 dot 图的快捷键定义

PlantUML 定义了绘制 UML 图的语法, 可以通过纯文本的方式绘制 UML 图. graphviz 定义了绘制一般图形的语法, 可以通过纯文本的方式绘图. 实际上, PlantUML 依赖于 graphviz.关于 PlantUML 详细情况, 参见 http://www.plantuml.com/.关于 graphviz 详细情况, 参见 http://www.graphvi...

2018-04-29 13:16:32 1318

原创 pandoc 中编写图片居中过滤器

什么是 pandocpandoc 文档转换过程自定义插入图片的格式docx, pdf, html 的居中语法编写过滤器后记在写 pandoc 文档时, 有时候需要定义自已的格式, 或者在插入了图片, 而将 pandoc 文档转换为其它格式时, 图片居中的方式有所不同. 对我来说, 经常将 pandoc 文档转换为 docx, html 和 pdf 格式. 若 pand...

2018-04-29 00:41:03 1811

原创 C++17 之 "deduction guides"

语法例子最后“Deduction guides” 在 C++17 标准 https://www.iso.org/standard/68564.html 中属于 17.9 章节. 标准中如下描述: Deduction guides 用于将一个 模板名称 声明为一个类型标识符, 此时需要使用 Deduction guides 推导出该标识符的类型. Deductio...

2018-04-23 16:32:51 1559 1

原创 robotc 编程挑战 (7)

任务简介程序最后任务简介本文为 virtual world challenge pack 中的基本运动(BASIC MOVEMENT) 中的 “orchard challenge”, 要求从指定地点出发, 沿果园小路一周, 到达指定出口. 如图 1 所示. 图 1 orchard challenge 界面图 此挑战使用的 robot 为 “Clawb...

2018-04-23 16:32:32 974

原创 robotc 编程挑战 (6)

任务简介程序任务简介本文为 virtual world challenge pack 中的基本运动(BASIC MOVEMENT) 中的 “sensabot challenge”, 如图 1 所示. 要求从起点 A 出发, 每到达一条红线时停下来并且举起机械臂一次再放下机械臂一次, 完成最后一次 (第三条红张) 动作后直接退回到开始区域. 图 1 sensb...

2018-04-20 20:56:44 824

原创 C++17 之 "void_t"

使用 void_tvoid_t 的工作原理一个有趣的例子C++ 17 提供了 void_t, 它是一个模板别名, 定义为template&lt;class...&gt;using void_t = void;void_t 一般用于元编程. 从定义上看, void_t 的定义平淡无奇, 但利用 SFINAE 原则在元编程中却可以发挥巨大威力.使用 void_t...

2018-04-19 20:24:36 5420

原创 安装使用 apt-cyg

由于习惯了使用了 linux, 但工作需要有时需要用到 windows. windows 的命令行功能有限, 命令也不丰富, 用的不习惯. 后来发现可以在 windows 下安装 cygwin, 强大的终端与 linux 下的终端非常相似. 于是安装了 cygwin. 关于 cygwin 的安装网上教程很多, 不多说.在安装了cygwin后, 可以直接利用其 “setup.exe”进行...

2018-04-18 11:28:35 944

原创 C++17 之 "constexpr if"

C++17 之前的做法C++17 的作法更多最后普通的 if-else 是在执行期进行条件判断与选择, 这意味着在泛型编程中无法使用 if-else 语句进行条件判断. 比如例 1 会引起编译错误例 1: 将多个数累加并返回累加结果template &lt;int N, int... Ns&gt;auto sum(){ if (sizeof...(Ns...

2018-04-18 08:24:19 14871 2

原创 C++17 之 "折叠表达式"

支持的操作符折叠分类空参数包其它例子最后C++11 提供了可变模板参数包, 使函数可以接受任意数量的参数. 但在 C++11 中展开参数包稍显麻烦, 而 C++17 的折叠表达式使得展开参数包变得容易, 其基本语法是使用 (...) 的语法形式进行展开.支持的操作符折叠表达式支持 32 个操作符: +, -, *, /, %, ^, &amp;, |, =,...

2018-04-17 13:51:43 7792 1

原创 ev3 编程中各程序块之间的关联

USB 连接无线连接其它在特殊场合的 ev3 模型中, 可能会用到不止一个 brick (官方将之称为程序块). 程序块之间可以通过两种方式连接: 有线和无线. 有线是指 USB 线, 无线是指 wifi 或 蓝牙. 这两种试是相互排斥的.USB 连接通过 USB 线将多个程序块连接在一起的方式, 官方称为 “菊链”, 最多可以将 4 个程序块连接在一起. 在...

2018-04-16 19:37:56 6533

原创 robotc 编程挑战 (5)

任务简介程序任务简介本文为 virtual world challenge pack 中的基本运动(BASIC MOVEMENT) 中的 “cargo_transport_challenge”, 要求从指定区域出发, 将抓取的物体运送指定终点 (图 1 中远方的黑线) 之后, 如图 1 所示. 图 1 gcargo_transport_challeng 界面图...

2018-04-16 13:43:55 545

原创 C++17 之 "利用构造函数推导模板参数类型"

演示用的模板类C++17 之前的做法C++17 的做法某些情况总结在 C++17 之前, 通过向模板类的构造函数传递参数无法推导出类的模板参数类型. 一般要通过一个帮助函数来构造一个对象, 通过传递给帮助函数的参数推导出参数类型, 然后在帮助函数中返回一个构造好的对象. 下面介绍 C++17 之前的做法与 C++17 的便利性.演示用的模板类temp...

2018-04-13 21:07:45 2101

tablet PC常用软件集

1 StickySorterSetup.msi 2 Desktops 3 modlock.zip 4 StrokeIt 5 aversoftsticker403.exe

2009-08-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除