1.源代码是什么
2.LaTeX学习笔记II:数学公式与代码排版(附源码)
3.影子输入法v2.0.3官方版
4.Linux下针对路由功能配置iptables的方法详解
源代码是什么
说白了就是各种编程语言,你现在所用的所有软件都是用各种源代码编出来的,大概样子就像:
<!--STATUS OK--><html><head>
<meta /w.gif?q=%D4%B4%B4%FA%C2%EB&"+sQ+"path="+p+"&t="+new Date().getTime(); return true}
function al_c(A){ while(A.tagName!="TABLE")A=A.parentNode;return A.getAttribute("id")}
//--></script></head>
<body onload="document.f1.reset();" link="#CDC">
<table width="%" height="" align="center" cellpadding="0" cellspacing="0">
<form name=f1 action="/s">
<tr valign=middle>
<td width="%" valign="top" style="padding-left:8px;width:px;" nowrap>
<a href="/"><img src="/img/logo-yy.gif" border="0" width="" height="" alt="到百度首页"></a>
</td>
<td> </td>
<td width="%" valign="top">
<div class="Tit">
<a href="/ns?cl=2&rn=&tn=news&word=%D4%B4%B4%FA%C2%EB" onmousedown="return c({ 'fm':'tab','tab':'news'})">新闻</a> <span class="fB">网页</span> <a href="/f?kw=%D4%B4%B4%FA%C2%EB" onmousedown="return c({ 'fm':'tab','tab':'tieba'})">贴吧</a> <a href="/q?ct=&pn=0&tn=ikaslist&rn=&word=%D4%B4%B4%FA%C2%EB&fr=wwwt" onmousedown="return c({ 'fm':'tab','tab':'zhidao'})">知道</a> <a href="/m?tn=baidump3&ct=&lm=-1&word=%D4%B4%B4%FA%C2%EB" onmousedown="return c({ 'fm':'tab','tab':'mp3'})">MP3</a> <a href="/i?tn=baiduimage&ct=&lm=-1&cl=2&word=%D4%B4%B4%FA%C2%EB" onmousedown="return c({ 'fm':'tab','tab':'pic'})"></a> <a href="/v?ct=&rn=&pn=0&db=0&s=&word=%D4%B4%B4%FA%C2%EB" onmousedown="return c({ 'fm':'tab','tab':'video'})">视频</a> <a href="/s?lm=0&si=&rn=&ie=gb&ct=&wd=%D4%B4%B4%FA%C2%EB&tn=baidu" target="_blank" onmousedown="return c({ 'fm':'tab','tab':'dict'})">词典</a> <!--bds<a href="$bdDSURL$">硬盘</a> -->
</div>
LaTeX学习笔记II:数学公式与代码排版(附源码)
本文旨在深入介绍利用LaTeX进行数学公式与代码排版的方法,为生成高质量科技和数学类文档提供技术支持。LaTeX以其卓越的排版功能和数学公式处理能力,成为学术和出版领域中的方云打包源码首选工具。在前文的基础上,本文将着重探讨以下几点: 1. 插入页码 在LaTeX文档中插入页码,可通过调用`\pagenumbering{ 数字形式}`命令实现。此命令后可指定页码的显示形式,如阿拉伯数字、罗马数字(大小写)、拉丁字母(大小写)等。 2. 高亮显示Matlab代码 为了在LaTeX中高亮显示Matlab代码,可借助`mcode`宏包。该宏包需要从Matlab论坛下载,并集成到CTEX宏包中。使用时,应确保文档加载了`mcode`,以实现代码的高亮显示功能。 由于`lisitings`宏包不支持中文高亮,显示中文代码面临挑战。解决方法较为简单,即避免在Matlab代码中使用中文字符。 3. 公式输入与排版 LaTeX提供了多种方式输入数学公式,如使用`amsmath`包中的命令,如`cases`、`sum`等。插入空心字符使用`amsfonts`包中的`mathbb{ R}`命令。矩阵、方程组及求和式的排版可通过`aligned`环境实现,支持多行书写、www.xadxs.com源码对齐以及换行。 公式不标序号可通过在公式环境声明中添加星号“*”实现。对于矩阵的表示,LaTeX提供了丰富的省略符号,如`cdots`、`ddots`、`vdots`等。 4. 位置 LaTeX通过`[htbp]`参数控制在文档中的浮动位置。`h`表示当前位置,`t`表示顶部,`b`表示底部,`p`表示浮动页。一般情况下,`[htb]`组合更为常用,确保文档布局美观。 正确使用这些参数,结合`float`宏包的`[H]`选项,可以灵活控制的显示位置,满足不同布局需求。如果遇到位置问题,应合理调整参数组合,以达到最佳排版效果。 本文提供了LaTeX中数学公式与代码排版的实用技巧,旨在帮助用户高效地生成高质量文档。通过掌握上述方法,用户能够更加便捷地处理复杂的数学表达和程序代码展示,实现专业化的文档制作。影子输入法v2.0.3官方版
影子输入法是一款简单、简洁、高度自定义的输入法,影子输入法起源于“Hello_srf”开发的小程序知识答题源码柚子输入法,取名“影子”,意在效率上发力,让你有不一样的输入,让你指间生花,让你的操作像一片“影子”。
影子输入法是一款简单、简洁、高度自定义的输入法,影子输入法起源于“Hello_srf”开发的柚子输入法,取名“影子”,意在效率上发力,让你有不一样的输入,让你指间生花,让你的操作像一片“影子”!
软件特色
影子输入法是开源、绿色、安全的输入法。你可以放心使用主要有以下特点:
高效快捷,提升你的效率是影子的宗旨,而不单单是输入,在高度自定义输入法根基上,加上魔法字符串和超级命令的加成下,让你体验行云流水的操作,牛逼的简直不要不要的。
绿色便携,可以放在优盘或者移动硬盘,走到哪里都可以即插即用,走到哪里都是自己熟悉的输入方案,永远不会有广告的骚扰,永远不会修改你的系统牛皮癣一样无论如何都清理不干净,同时影子不会影响你的v型反转公式源码原有输入法。影子本着绿色开源的发展理念,开放源代码,让你使用无优,可以放心使用。
高度自定义,可随心所欲的改造自己的词库,魔法字符串库,命令库。输入法目前支持的输入方案有五笔、小鹤音形、小鹤双拼、自然码双拼、微软双拼、abc双拼、拼音等,魔法字符串可以让你1秒输入万字,超级命令可以让你window操作几乎无所不能。
还等什么,来抓紧时间让它带你飞。
输入帮助
输入法开关———>Shift
第一候词选上屏—->Space
候选上屏————>数字1、2、3、4、5、6、7、8、9、0
英文字符上屏——>Enter
魔法字符串上屏—>逗号
执行命令———–>句号
候选翻页———–>-[(左) +](右)
内置命令———–>`键,“·命令名·参数” 或 “命令名·参数” 调用(不受是否开启超级命令影响)
功能介绍
选项
在对应的选项处勾选就可以了。
开机启动:此功能需要系统的bind9.10 源码安装任务计划服务支持。
自动更新:如遇到输入法启动后一段时间无响应,请关闭此选项,使用手动更新。
以管理员身份运行:如未启用此选项,在其他使用管理员权限运行的应用中无法使用各种功能;启用后,functions库的鼠标拖拽生成命令功能失效。
发送延时:部分窗口对按键发送速度有要求,无法响应太快的键击,适当调高延时解决相关问题。
字词联想:在拼音输入时,联想一个拼音可能未输完部分,如:输入xi’wa,会显示出xi’wang、xi’wan等候选。
动态调频;开启后,输入时对应的词频weight会逐渐增大,表现出该字词在候选中的位置出现变化。
自学习:仅在输入方案是拼音类时有效,当打一词组选取候选项时,第一个候选项选择单字时激活自学习。
默认模式:英语或中文,第一次打开某窗口时的默认模式。
xx模式的应用:打开某窗口或切换到某窗口时的默认模式。输入进程名或ahk_class以英文,分隔,如QQ.exe,TXGuiFoundation。
繁体中文:开启后把输入的简体字以繁体字输出,关闭时不能把词库中的繁体字以简体字输出。对hotstrings库无效。
输入方案:分为拼音、形码两大类。拼音及双拼都归为拼音类,使用pinyin词库;所有最大码长为4位的都归为形码类,包括五笔、小鹤音形等,使用的词库由导入的文件名决定,在导入后重新打开选项选择相关选项。
自动扩展到全拼:辅助显示当前输入对应的拼音全拼。
简拼索引:强烈建议使用拼音相关输入方案的开启此功能(包括拼音混输),开启后可以使用简拼、模糊音等功能,取词也更准确。输入异常时,点击<重建>重新生成简拼索引。
误码清除:当无对应的4码字词时清空输入。误码清除、五码首选上屏、四码唯一上屏与拼音混输会有冲突。
快捷选重:形码输入时可以用 ;’键选择次选、三选
界面:候选框样式、Logo缩放的设置。
控制:快捷键、内置命令重命名等设置。
导入词库
点击导入词库按扭,选择相应的词库文件,等待词库管理界面状态栏提示导入完成即可。
导入的词库是txt文本格式;
文件名以pinyin(对应所有双拼和拼音输入法)、emoji(emoji表情)、hotstrings(对应魔法字符串功能)、functions(对应超级命令功能)之一或其他为前缀,如pinyin.txt,pinyin_.txt;前缀为pinyin、wubi时能自动生成编码;导入其他前缀的形码类词库会生成对应的选项(适用于最长编码4位)。
拼音、形码类的导入格式有:(xnhe=小鹤= )(shuang’pin=双拼= )(xnhe=小鹤)(小鹤)(小鹤=)(aaaa=劳斯莱斯=工=恭恭敬敬=花花草草);hotstrings、functions的导入格式为JSON格式,如 { “key”,”value”,”comment”}。
同一导入文件只能包含一种格式;
导入的key是小写字母组合,拼音导入时key含’分词符。
导出词库
选择相应的词库,点击导出词库按扭即可(也可搜索后导出部分词条)。
删除词库
选择相应的词库,点击删除词库按扭即可。
增加词条
增加词条时,在词条展示区域,点击右键,在弹出菜单中选择新建按扭,在空白词条上编辑内容即可。
词条逻辑是key(按键)+value(对应值)+weight(权重)/comment(备注)模式。
functions词库的词条一定要编辑备注,备注是展示内容,比如value=notepad.exe 备注=记事本。拖动文件到词库管理界面可快速新建functions词条(管理员权限运行时该操作无效)。
编辑词条
开启动态调频时,词条的权重随用户输入次数而增加。候选词会根据权重排序,所以对次序要求较高的用户可以自行调整权重并关闭动态调频。
调整方法:通过检索将同key的词条全部检索出来,双击相应位置即可进行编辑,编辑时按Up、Down、Shift+Tab、Tab键可上下左右切换编辑区。
删除词条
选择待删除的词条,点击右键,在弹出菜单中选择删除按扭或按Delete键(可多选)。
魔法生成
魔法生成是一个非成好用的快捷操作方法,可以将词语批量导入,并生成词条,也可以用于保存带格式的文本。
输入法折腾指南
输入法使用autohotkey语言开发,主要有程序主体和词库构成。用户可以根据自己需要对词库进行“折腾”或修改源码。没有做不到,只有想不到!哈哈
词库逻辑:
小鹤词库构建逻辑
单字—->小鹤音形、简码(aakk:啊,a:啊)
双字—->首字前两码 + 末字前两码(ykzi:影子)
三字以上—->前两字首码 + 末字前两码(urfa:输入法)
四字及以上—->前三字首码 + 末字首码(txyv:他乡遇故知)
五笔词库逻辑
、方案,简洁为主
导入wubi、wubi词库,自动生成对应选项
新建词条时自动生成五笔、五笔编码(对应的默认词库名wubi、wubi)
拼音词库逻辑
全拼,以 ‘ 分隔每个字的拼音
新建词条时自动生成拼音(词库名pinyin)
为了更好的拼音体验请开启 简拼索引(拼音加强),包括五笔的拼音混输
魔法字符串库逻辑
自定义短语或带格式的大段文字
comment处可设置多种模式,无{ …}关键字或{ Input}{ Text} 文本模式(默认);{ Fast}粘贴模式,大段文字输入时速度快;{ Delay,,}延时模式;{ }键击模式同{ Delay,,0},如:{ F4};
超级运行命令库逻辑
无缝跳转>
无缝启动>
运行自定义小脚本(comment处加{ Script}前缀)
内置函数 括号内参数非必须,time(·) –>上午时分秒;date(·) –> 公元年月日-周六;lunar(·) –> 已亥(猪)年农历九月廿九|第周|;num· –> 一万二千三百四十五 ;dxnum· –> 壹万贰仟叄佰肆拾伍 (同num··d);dtb(·) –> (省略参数取剪切板中的数值);同理dth、bth、btd、htd、htb;shichen·2 –>丑时(鸡鸣|『四更』);magic·xxxx取hotstrings词库中key=xxxx的全部词条;emoji·xxxx取emoji词库中key=xxxx的全部词条;len 计算剪切板的字符数,如有大于2字节的字符会出现计算结果不正确。
更新日志
v2.0.3
1.切换至其他输入法时调整退出->禁用
2.修复标点顶屏、成对符号移位偶尔异常
3.注解随方案切换,文件名+“_方案”
4.修复词库管理无法自动加载词库的问题
Linux下针对路由功能配置iptables的方法详解
作为公司上网的路由器需要实现的功能有nat地址转换、dhcp、dns缓存、流量控制、应用程序控制,nat地址转换通过iptables可以直 接实现,dhcp服务需要安装dhcpd,dns缓存功能需要使用bind,流量控制可以使用tc,应用程序控制:例如对qq的封锁可以使用 netfilter-layer7-v2.+-protocols---.tar.gz来实现
1、网络规划
操作系统是centos5.8
2、安装dhcpd
代码如下:
yum install dhcp-3.0.5-.el5
vim /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet .0.0.0 netmask ...0 {
option routers .0.0.1;
option subnet-mask ...0;
option domain-name-servers .0.0.1;
range dynamic-bootp .0.0. .0.0.;
default-lease-time ;
max-lease-time ;
}
3、安装bind,实现dns缓存
代码如下:
yum install bind.i bind-libs.i bind-utils.i
vim /etc/named.conf
options {
directory "/var/named";
allow-recursion { .0.0.0/; };
recursion yes;
forward first; #将所有请求都进行转发
forwarders { ...; }; #定义转发服务器地址
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "named.localhost";
allow-transfer { none; };
};
zone "0.0..in-addr.arpa" IN {
type master;
file "named.loopback";
allow-transfer { none; };
};
创建根域文件,默认有
代码如下:
dig -t NS . /var/named/named.ca
chown :named /var/named/named.ca
创建本地正向解析文件,默认有
代码如下:
vim /var/named/named.localhost
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A .0.0.1
chown :named /var/named/named.localhost
创建本地反向解析文件,默认有
代码如下:
vim /var/named/named.loopback
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A .0.0.1
PTR localhost.
chown :named /var/named/named.loopback
检查主配置文件
代码如下:
named-checkconf
检查根区域配置文件
代码如下:
named-checkzone “.” /var/named/named.ca
检查区域文件
代码如下:
named-checkzone “localhost” /var/named/named.localhost
启动服务
代码如下:
service named start
4、重新编译编译内核和iptables以支持应用层过滤
由于实行防火墙功能的是netfilter内核模块,所以需要重新编译内核,需要下载新的内核源码,并使用netfilter-layer7-v2.作为内核的补丁一起编译到内核中。而控制netfiler的是iptables工具,因此iptables也必须重新编译安装,最后再安装应用程序过滤特征码库-protocols--.tar.gz
1、给内核打补丁,并重新编译内核
2、给iptables源码打补丁,并重新编译iptables
3、安装proto
备份iptables脚本和配置文件
代码如下:
cp /etc/rc.d/init.d/iptables /root/iptables.sysv
cp /etc/sysconfig/iptables-config /root/iptables-config
2.6内核下载地址
/l7-filter/
iptables源码下载地址
/l7-filter/
代码如下:
xz -d linux-2.6...tar.xz
tar -xvf linux-2.6...tar.gz -C /usr/src #新的内核源码,用于重新编译
tar -zxvf netfilter-layer7-v2..tar.gz -C /usr/src #内核补丁和iptables补丁 ,只支持到2.6.
#进入解压目录并创建软连接
pcd /usr/src
ln -sv linux-2.6.. linux
#进入内核目录
pcd /usr/src/linux
#为当前内核打补丁
ppatch -p1 ../netfilter-layer7-v2./kernel-2.6.-2.6.-layer7-2..path
#为了方便编译内核将系统上的内核配置文件复制过来
pcp /boot/config-2.6.-.el5 /usr/src/linux/.config
编译内核
代码如下:
make menuconfig
Networking support - Networking Options - Network packet filtering framework - Core Netfilter Configuration
Netfilter connection tracking support
"lawyer7" match support
"string" match support
"time" match support
"iprange" match support
"connlimit" match support
"state" match support
"conntrack" connection match support
"mac" address match support
"multiport" Multiple port match support
Networking support - Networign options - Network packet filtering framework - IP:Netfiltr Configuration
IPv4 connection tracking support (required for NAT)
Full NAT
MASQUERADE target support
NETMAP target support
REDIRECT target support
在Networking support中选择 Networking options
查找Network packet filtering framework(Netfilter)–Core Netfiler Configrationg–Netfilter connection tracking support(NEW),”layer7″ match support(NEW),”time” match support(NEW),”iprange”
查找IP:Netfilter Configuration–IPv4 connection tracking support,Full NAT(NEW)
代码如下:
make
make modules_install
make install
重启操作系统选择新内核登录
卸载旧的iptables
代码如下:
rpm -e iptables-1.3.5-9.1.el5 iptables-ipv6-1.3.5-9.1.el5 iptstate-1.4-2.el5 --nodeps
安装新的iptables,以支持新的netfiler模块
代码如下:
tar -jsvf iptables-1.4.6.tar.bz2 -C /usr/src
cd /usr/src/netfilter-layer7-v2.
cd iptables-1.4.3forward-for-kernel-2.6.forward
cp * /usr/src/iptables-1.4.6/extensions/
cd /usr/src/iptables-1.4.6/
./configure --prefix=/usr --with-ksource=/usr/src/linux
make
make install
查看安装后的iptables的文件
代码如下:
ls /usr/sbin |grep iptables
ls /usr/libexec/xtables
复制之前备份的配置文件和脚本
代码如下:
cp /root/iptables-config /etc/sysconfig/
cp /root/iptables.sysv /etc/rc.d/init.d/iptables
修改脚本中iptables的路径
代码如下:
vim /etc/rc.d/init.d/iptables
:.,$s@/sbin/$IPTABLES@/usr/sbin/$IPTABLES@g
让iptables服务开机自动启动
代码如下:
chkconfig --add iptables
修改iptables 配置文件
将/etc/sysconfig/iptables-config中的
IPTABLES_MODULES=”ip_conntrack_netbios_ns” 注释掉
安装协议特征码
代码如下:
tar xvf -protocols--.tar.gz
make install
完成后在/etc/l7-protocols会生成文件
支持的协议/etc/l7-protocols/protocols
添加iptables策略,运行内部网络上网,禁止qq和视频
代码如下:
iptables -t nat -A POSTROUTING -s .0.0.0/ -j SNAT --to-soure ..6.
iptables -A FORWARD -m layer7 --l7proto qq -j DROP
iptables -A FORWARD -m layer7 --l7proto httpvideo -j DROP
iptables -A FORWARD -m layer7 --l7proto httpaudio -j DROP
指定8点到点无法上网
复制代码
代码如下:
iptables -A FORWARD -m time --timestart : --timestop : -j DROP
5、使用tc控制带宽
例如公司出口带宽是Mbps,个用户A分配KB的最大下载带宽,给用户B 分配分配的最大下载带宽是KB
A用户ip:.0.0.
B用户ip:.0.0.
代码如下:
#在eth0网卡上创建一个根队列规则,队列规则的算法使用htb,default 2表示指定一个默认类别编号,默认的流量控制策略,如果ip没有在后面的filter中被匹配到就都是有这个策略
tc qdisc add dev eth0 root handle 1:0 htb default 2
#在eth0网卡上定义一个类,prant 1:0中的1对应根队列规则中的handle 1:0,classid 1:2表示当前这个类的标识,用于应用在后面的得到filter中,rate kbsp表示带宽为KB/s,ceil kbps表示最大带宽也为KB/s,prio 2是优先级
tc class add dev eth0 parent 1:0 classid 1:2 htb rate kbps ceil kbps prio 2
tc class add dev eth0 parent 1:0 classid 1:3 htb rate kbps ceil kbps prio 2
#将两个类的默认的fifq队列规则改为sfq
tc qdisc add dev eth0 parent 1:2 handle sfq
tc qdisc add dev eth0 parent 1:3 handle sfq
#在网卡eth0上的1:0节点(对应qdisc中的handle 1:0)添加一个u过滤规则,优先级为1,凡是目标地址是.0.0.的数据包都使用1:2类(对应classid为1:2的类)
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u match ip dst .0.0. flowid 1:2
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u match ip dst .0.0. flowid 1:3
如果还有其他用户例如用户C和D的ip是、,要求的下载带宽也要求那么在加入
代码如下:
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u match ip dst .0.0. flowid 1:3
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u match ip dst .0.0. flowid 1:3
清除eth0上的规则
代码如下:
tc qdisc del dev eth1 root /dev/null