免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1937 | 回复: 6
打印 上一主题 下一主题

语法加亮怎么放到网页上来 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-05 16:03 |只看该作者 |倒序浏览
比如下面这些代码,放到网页上来还有语法加亮。是怎么实现的?
#ifdef __cplusplus
extern "C" {
#endif

void f(void);

#ifdef __cplusplus
}
#endif

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
2 [报告]
发表于 2009-06-07 20:02 |只看该作者
试一下

  1. #ifdef __cplusplus
  2. extern "C" {
  3. #endif

  4. void f(void);

  5. #ifdef __cplusplus
  6. }
  7. #endif
复制代码



指明插入特定语言代码会有加亮显示
一般“插入代码”没有

词法分析?

[ 本帖最后由 openspace 于 2009-6-7 20:05 编辑 ]

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
3 [报告]
发表于 2009-06-07 20:20 |只看该作者
插入后自己看HTML源码

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
4 [报告]
发表于 2009-06-07 20:39 |只看该作者
<font color="#0000cc">#</font><font color="#ff0000">ifdef</font> __cplusplus<br>
<font color="#0000ff">extern</font> <font color="#ff00ff">"C"</font> <font color="#0000cc">{</font><br>
<font color="#0000cc">#</font><font color="#ff0000">endif</font><br>
<br>
<font color="#0000ff">void</font> f<font color="#0000cc">(</font><font color="#0000ff">void</font><font color="#0000cc">)</font><font color="#0000cc">;</font><br>

<br>
<font color="#0000cc">#</font><font color="#ff0000">ifdef</font> __cplusplus<br>
<font color="#0000cc">}</font><br>
<font color="#0000cc">#</font><font color="#ff0000">endif</font>

不同类型的关键字以及符号使用不同的颜色
直观上看是一个微型的关键字-符号词库
类似词法分析识别单词,符合某个匹配后用预先定义的对应颜色显示

论坛徽章:
0
5 [报告]
发表于 2009-06-07 21:42 |只看该作者
vim安装目录下syntax目录下的2html.vim可以帮你把源码转换成html文件.转化后的效果跟vim中源码显示效果一样.

论坛徽章:
0
6 [报告]
发表于 2009-06-08 10:53 |只看该作者
分析关键字,然后把关键字用html弄成有颜色的就行了赛

论坛徽章:
0
7 [报告]
发表于 2009-06-08 15:28 |只看该作者
CU 的这个版本只是简单地先 tokenize,然后根据 token 的类型做 colorization。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP