首页 > 其他分享 >1849_emacs_org-mode提取源代码

1849_emacs_org-mode提取源代码

时间:2023-12-25 12:38:42浏览次数:55  
标签:1849 提取 代码 功能 emacs mode org 源代码 其实


Grey

全部学习内容汇总: https://github.com/greyzhang/g_org

1849_emacs_org-mode提取源代码

代码提取是从 org-mode 的org文件中提取生成我们所需要的代码的过程,这里结合官方的文档来看看还有什么细节的配置信息。

主题由来介绍

文学式编程其实是把直接写代码转换成了写文学式的篇章,在这个文学式篇章之中,插入我们设计中的代码碎片。这样,我们的思维模式会回到一个人类思维的模式。然而,当我们做完自己的设计之后,最终参与运行的还是得用代码,这样就需要有一个代码提取的过程。

材料信息

这一次参考的主要还是官方的文档,链接: Extracting Source Code (The Org Manual)

要点细节分析

1849_emacs_org-mode提取源代码_代码生成

  • 代码的提取是文学式编程里面的一个基本的任务。
  • org-mode 在代码提取的方面,提供了文件分离等比较细节的功能支持。

1849_emacs_org-mode提取源代码_编辑器_02

  • 在代码提取方面,可以控制代码是否提取以及指定提取的文件。
  • 同时,可以通过头部的 mkdirp 参数来控制实现将代码生成到指定的目录中,如果目录不存在则进行创建。

1849_emacs_org-mode提取源代码_代码生成_03

  • 这部分比较值得注意的是注释的生成其实是可以实现追踪功能的,这样可以根据编译等错误直接回溯到文档部分。
  • 类似的功能其实可以让人想到MATLAB的处理效果,simulink的代码生成其实就可以实现追踪效果。

1849_emacs_org-mode提取源代码_MATLAB_04

  • 这一个功能我觉得其实是锦上添花的功能,如果没有这样的功能支持,单纯靠控制代码块也是很容易实现不错的提取后代码排版分离效果的。

1849_emacs_org-mode提取源代码_编辑器_05

  • 如果生成代码带有#!, tangle的过程可以实现文件的执行属性的处理。
  • 即使是没有这部分指定,也有明确的属性指定方式。当然,这种其实是针对unix比较合适的。

1849_emacs_org-mode提取源代码_代码生成_06

  • 如果配置了link功能,那么其实是可以根据调试的结果直接追踪到org文件中的原始部分的。

小结

其实,针对简单的文学式编程支持,只需要掌握很少的一部分功能就能够支持。而emacs的org-mode功能,很多的扩充是针对可重现研究的。从这个工具的功能实现角度来考虑,其实工具的设计难点也的确是这部分会难一些。

标签:1849,提取,代码,功能,emacs,mode,org,源代码,其实
From: https://blog.51cto.com/greyzhang/8965520

相关文章

  • 1848_emacs_org-mode代码块环境
    Grey全部学习内容汇总:https://github.com/greyzhang/g_org1848_emacs_org-mode代码块环境这一部分主要是涉及到一些代码的执行、引用以及输出处理等功能。从之前我看的资料来说,更加偏重于可重现研究但不一定是文学式编程的必要部分。内容来源看org-mode的代码块部分的时候,其实就......
  • 数字医院HIS系统源代码,采用前后端分离架构,SaaS云部署,支持电子病历四级
    本HIS项目采用前后端分离架构,SaaS云部署模式前端:Angular+Nginx+JavaScript后端:Java+Spring,SpringBoot,SpringMVC等数据库:MySQL+MyCat1、自主研发+应用实例,整合电子病历系统、LIS系统,支持电子病历四级。2、功能:预约挂号、门诊费用、住院管理、药房管理、药库管理、门诊医生站、门诊......
  • VUE框架底层源代码解读------VUE框架
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</title>......
  • 1842_emacs使用company-irony实现C语言的自动补全
    Grey全部学习内容汇总:GitHub-GreyZhang/editors_skills:SummaryforsomecommoneditorskillsIused.1842_emacs使用company-irony实现c语言的自动补全irony-mode是一个自动补全的实现方案,配合company集成之后效果非常好。简单调试完了之后,基本上能够确定这是我这么多年来使......
  • JavaScript代码加密:保护你的源代码
    一、引言 JavaScript是一种广泛使用的编程语言,常用于前端开发。然而,由于其源代码是公开可见的,因此很容易被他人查看和修改。这可能会导致代码的安全性和稳定性受到影响,甚至可能被恶意利用。因此,对JavaScript代码进行加密是非常重要的。 本文将介绍一些JavaScript代......
  • 【前端VUE】VUE通信组件学习(附源代码)
    propsprops可以实现父子组件通信,不管是在vue2或者vue3,props数据还是只读的!!!不能直接修改其值;在vue3中,我们可以通过defineProps获取父组件传递的数据,且在组建内部不需要引入defineProps方法可以直接使用,如下面例子Parent.vue//父组件<template><h3>props组件案例</h3......
  • 群智能优化算法测试函数matlab源代码
    globalM;creatematrix(2);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%画ackley图。%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%ackleyxfrom[-55]%x=-5:0.01:5;%[x,y]=meshgrid(x);%temp1=x.^2+y.^2;%temp2=cos(2*pi*x)+cos(2*pi*y);%z=20+exp(1)-20*exp(-0.2*sqrt(te......
  • G-Rilling EMD HHT Matlab 开源代码
    downpackage_emd/EMDs/cemdc.m , 2354package_emd/EMDs/cemdc2.m , 2362package_emd/EMDs/cemdc2_fix.m , 2312package_emd/EMDs/cemdc_fix.m , 2305package_emd/EMDs/emd.m , 22275package_emd/EMDs/emd_local.m , 9897package_emd/EMDs/emd_online.m , 26315pack......
  • 商用软件调用开源代码后硬分叉不合并 —— 一种合法的防御性编程或者是商用软件的贪婪
    看到一个说法,说前段时间某滴的公司代码升级导致错误最后使全公司业务崩溃一整天的事情是因为公司商用软件中使用了一种合法的防御性编程,也就是商用软件调用开源代码后硬分叉不合并。 可以说商业企业大幅度使用开源软件已经是公开的秘密了,但是出于实际情况这些不合规的将开源软......
  • 【教程】源代码加密、防泄密软件
    ​ 【教程】源代码加密、防泄密软件什么是代码混淆?代码混淆 是一种将应用程序二进制文件转换为功能上等价,但人类难于阅读和理解的行为。在编译Dart代码时,混淆会隐藏函数和类的名称,并用其他符号替代每个符号,从而使攻击者难以进行逆向工程。Flutter的代码混淆功能仅在IPA文......