Structured Haskell Mode 项目教程

Structured Haskell Mode 项目教程

structured-haskell-modeStructured editing minor mode for Haskell in Emacs项目地址:https://gitcode.com/gh_mirrors/st/structured-haskell-mode

1. 项目的目录结构及介绍

structured-haskell-mode/
├── elisp/
│   ├── shm-ast.el
│   ├── shm-case-split.el
│   ├── shm-constraints.el
│   ├── shm-debug.el
│   ├── shm-editing.el
│   ├── shm-evaporate.el
│   ├── shm-fold.el
│   ├── shm-indent.el
│   ├── shm-insert.el
│   ├── shm-layout.el
│   ├── shm-macros.el
│   ├── shm-manipulation.el
│   ├── shm-nav.el
│   ├── shm-node.el
│   ├── shm-overlays.el
│   ├── shm-reformat.el
│   ├── shm-simple-indent.el
│   ├── shm-tests.el
│   ├── shm-type.el
│   ├── shm-yank.el
│   └── structured-haskell-mode.el
├── src/
│   ├── Main.hs
│   ├── SHM/
│   │   ├── AST.hs
│   │   ├── CaseSplit.hs
│   │   ├── Constraints.hs
│   │   ├── Debug.hs
│   │   ├── Editing.hs
│   │   ├── Evaporate.hs
│   │   ├── Fold.hs
│   │   ├── Indent.hs
│   │   ├── Insert.hs
│   │   ├── Layout.hs
│   │   ├── Macros.hs
│   │   ├── Manipulation.hs
│   │   ├── Nav.hs
│   │   ├── Node.hs
│   │   ├── Overlays.hs
│   │   ├── Reformat.hs
│   │   ├── SimpleIndent.hs
│   │   ├── Tests.hs
│   │   ├── Type.hs
│   │   └── Yank.hs
│   └── structured-haskell-mode.cabal
├── test/
│   ├── Spec.hs
│   └── TestSHM.hs
├── LICENSE
├── README.md
└── Setup.hs

目录结构介绍

  • elisp/: 包含 Emacs Lisp 文件,用于在 Emacs 中实现 Haskell 的结构化编辑模式。
  • src/: 包含 Haskell 源代码文件,包括主程序和各个模块的实现。
  • test/: 包含测试文件,用于测试项目的功能。
  • LICENSE: 项目的许可证文件。
  • README.md: 项目的介绍和使用说明。
  • Setup.hs: 用于构建项目的配置文件。

2. 项目的启动文件介绍

src/Main.hs

Main.hs 是项目的启动文件,负责初始化和启动 structured-haskell-mode 的主要功能。它包含了主函数的定义,用于解析 Haskell 代码并生成相应的编辑标记。

module Main where

import SHM.AST
import SHM.CaseSplit
import SHM.Constraints
import SHM.Debug
import SHM.Editing
import SHM.Evaporate
import SHM.Fold
import SHM.Indent
import SHM.Insert
import SHM.Layout
import SHM.Macros
import SHM.Manipulation
import SHM.Nav
import SHM.Node
import SHM.Overlays
import SHM.Reformat
import SHM.SimpleIndent
import SHM.Tests
import SHM.Type
import SHM.Yank

main :: IO ()
main = do
    -- 初始化代码
    putStrLn "Structured Haskell Mode initialized."

3. 项目的配置文件介绍

structured-haskell-mode.cabal

structured-haskell-mode.cabal 是项目的配置文件,用于定义项目的依赖、构建选项和其他元数据。

name:                structured-haskell-mode
version:             1.0.0
synopsis:            Structured editing Emacs mode for Haskell
description:         Structured editing Emacs mode for Haskell
license:             BSD3
license-file:        LICENSE
author:              Chris Done
maintainer:          chrisdone@gmail.com
category:            Development
build-type:          Simple
cabal-version:       >=1.10

executable structured-haskell-mode
  main-is:             Main.hs
  other-modules:       SHM.AST, SHM.CaseSplit, SHM.Constraints, SHM.Debug, SHM.Editing, SHM.Evaporate, SHM.Fold, SHM.Indent, SHM.Insert, SHM.Layout, SHM.Macros, SHM.Manipulation, SHM.Nav, SHM.Node, SHM.Overlays, SHM.Reformat, SHM.SimpleIndent, SHM.Tests, SHM.Type, SHM.Yank
  build-depends:       base >=4 && <5, descriptive >=0.7 && <0.10, ghc-prim, haskell-src-exts >=1.18 && <1.20, text
  default-language:    Haskell2010

Setup.hs

Setup.hs 是用于构建项目的配置文件,通常用于自定义构建过程。

import Distribution.Simple
main = defaultMain

通过以上配置文件,可以构建和安装 structured-haskell-mode 项目,并在 Emacs 中启用 Haskell 的结构化编辑模式。

structured-haskell-modeStructured editing minor mode for Haskell in Emacs项目地址:https://gitcode.com/gh_mirrors/st/structured-haskell-mode

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

岑晔含Dora

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值