# recorder **Repository Path**: jmjoy/recorder ## Basic Information - **Project Name**: recorder - **Description**: 竖笛相关工具。 - **Primary Language**: Rust - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-10-06 - **Last Updated**: 2023-11-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Recorder [![Build Status](https://travis-ci.org/jmjoy/recorder.svg?branch=master)](https://travis-ci.org/jmjoy/recorder) 竖笛相关工具。 - tone-converter - recorder-visualizer ## tone-converter 简单的12平均律数字简谱转换器。 ### 数字简谱语法 `1-7`表示音符,`()`表示低音,`(())`表示超低音,`[]`表示高音,`[[]]`标识超高音,`#`表示升调。 例如,《镜音铃——孟姜女》的数字简谱如下: ``` (5) (7) 1 1 2 1 (5) (5) (5) (5) (5) (2) (3) (4) (3) (3) (7) 1 1 2 3 (6) (6) 3 3 2 3 2 1 (7) 1 (5) (7) 1 1 2 1 (5) (5) (5) (5) (5) 2 4 3 4 3 1 1 (5) (5) 1 1 1 2 3 2 1 (7) 1 (5) 3 1 2 2 3 2 1 1 (5) 1 2 1 3 3 4 5 6 1 1 5 1 2 3 5 1 2 3 3 6 5 6 5 1 2 3 4 3 1 (6) (7) 1 1 3 2 1 2 2 5 3 1 2 3 3 3 6 5 6 5 1 2 3 4 3 3 (6) (7) 1 2 1 (7) 1 2 3 2 4 3 4 3 2 1 (7) 1 1 ``` ### 使用方法 ``` tone-converter 0.1.0 音调转换器,标准输入接受数字简谱,标准输出转换后的简谱。 USAGE: tone-converter --from --to FLAGS: -h, --help Prints help information -V, --version Prints version information OPTIONS: --from 输入的调,例如`c`,`#c` --to 输出的调,例如`c`,`#c` ``` 例如: ```bash tone-converter --from '#a' --to 'c' < tests/孟姜女.txt ``` 输出: ``` 4 6 #6 #6 [1] #6 4 4 4 4 4 1 2 #2 2 2 6 #6 #6 [1] [2] 5 5 [2] [2] [1] [2] [1] #6 6 #6 4 6 #6 #6 [1] #6 4 4 4 4 4 [1] [#2] [2] [#2] [2] #6 #6 4 4 #6 #6 #6 [1] [2] [1] #6 6 #6 4 [2] #6 [1] [1] [2] [1] #6 #6 4 #6 [1] #6 [2] [2] [#2] [4] [5] #6 #6 [4] #6 [1] [2] [4] #6 [1] [2] [2] [5] [4] [5] [4] #6 [1] [2] [#2] [2] #6 5 6 #6 #6 [2] [1] #6 [1] [1] [4] [2] #6 [1] [2] [2] [2] [5] [4] [5] [4] #6 [1] [2] [#2] [2] [2] 5 6 #6 [1] #6 6 #6 [1] [2] [1] [#2] [2] [#2] [2] [1] #6 6 #6 #6 ``` ## recorder-visualizer 简单的竖笛指法图生成器。 ### 使用方法 ``` recorder-visualizer 0.1.0 简单的竖笛指法图生成器。 USAGE: recorder-visualizer --tone FLAGS: -h, --help Prints help information -V, --version Prints version information OPTIONS: -t, --tone 指法音调,例如`c`,`#c` ``` 例如: ```bash recorder-visualizer -t '#a' < tests/孟姜女.txt ``` 输出: ``` ● ● ● ● ● ● ● ● - - - - - - - - ● ● ● ● ○ ● ● ● ● ● ○ ○ ● ○ ● ● ● ○ ● ● ○ ● ● ● - - - - - - - - ● ○ ● ● ○ ● ● ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ● ● ○ ○ ○ ○ ○ ● ● (5) (7) 1 1 2 1 (5) (5) ● ● ● ● ● ● ● - - - - - - - ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● - - - - - - - ● ● ● ● ● ● ● ○ ○ ○ ● ● ● ● ● ● ● ● ● ◐ ● ● ● ● ● ○ ○ ○ (5) (5) (5) (2) (3) (4) (3) ● ● ● ● ● ○ ● ● - - - - - - - - ● ● ● ● ○ ○ ● ● ● ● ○ ○ ● ● ● ● ● ○ ● ● ○ ○ ● ● - - - - - - - - ● ○ ● ● ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ (3) (7) 1 1 2 3 (6) (6) ○ ○ ● ○ ● ● ● ● - - - - - - - - ○ ○ ○ ○ ○ ● ● ● ● ● ● ● ● ○ ● ○ ○ ○ ○ ○ ○ ● ○ ● - - - - - - - - ○ ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 3 3 2 3 2 1 (7) 1 ● ● ● ● ● ● ● ● - - - - - - - - ● ● ● ● ○ ● ● ● ● ● ○ ○ ● ○ ● ● ● ○ ● ● ○ ● ● ● - - - - - - - - ● ○ ● ● ○ ● ● ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ● ● ○ ○ ○ ○ ○ ● ● (5) (7) 1 1 2 1 (5) (5) ● ● ● ● ○ ○ ○ ○ ● ● - - - - - - - - - - ● ● ● ○ ○ ○ ○ ○ ● ● ● ● ● ● ● ● ● ● ○ ○ ● ● ● ○ ● ○ ● ○ ● ● - - - - - - - - - - ● ● ● ○ ● ○ ● ○ ● ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ● ● ● ○ ● ○ ● ○ ○ ○ ● ● ● ○ ○ ○ ○ ○ ○ ○ (5) (5) (5) 2 4 3 4 3 1 1 ● ● ● ● ● ● ○ ● ● ● ● - - - - - - - - - - - ● ● ● ● ● ○ ○ ○ ● ● ● ● ● ○ ○ ○ ● ● ● ○ ● ○ ● ● ● ● ● ○ ○ ○ ● ○ ● - - - - - - - - - - - ● ● ● ● ● ○ ○ ○ ● ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ● ○ ○ ○ ○ ○ ○ ○ ○ ○ (5) (5) 1 1 1 2 3 2 1 (7) 1 ● ○ ● ● ● ○ ● ● ● - - - - - - - - - ● ○ ● ○ ○ ○ ○ ● ● ● ● ○ ● ● ● ● ○ ○ ● ○ ● ○ ○ ○ ○ ● ● - - - - - - - - - ● ○ ● ○ ○ ○ ○ ● ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ (5) 3 1 2 2 3 2 1 1 ● ● ● ● ○ ○ ○ ◐ ◐ ● ● ◐ ● ● ○ - - - - - - - - - - - - - - - ● ● ○ ● ○ ○ ○ ● ● ● ● ● ● ○ ○ ● ○ ● ○ ● ● ● ● ● ○ ○ ● ○ ● ● ● ● ○ ● ○ ○ ● ● ● ● ● ● ● ○ ○ - - - - - - - - - - - - - - - ● ● ○ ● ○ ○ ● ● ○ ● ● ● ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ (5) 1 2 1 3 3 4 5 6 1 1 5 1 2 3 ◐ ● ● ○ ○ ◐ ◐ ◐ ◐ ● ● ○ ○ ○ ● - - - - - - - - - - - - - - - ● ● ○ ○ ○ ● ● ● ● ● ○ ○ ○ ○ ● ● ○ ● ● ● ● ● ● ● ○ ● ● ● ● ○ ● ● ○ ○ ○ ● ● ● ● ● ○ ○ ● ○ ● - - - - - - - - - - - - - - - ● ● ○ ○ ○ ○ ● ○ ● ● ○ ○ ● ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ● ○ ○ ○ ○ ○ ● ○ ● ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 5 1 2 3 3 6 5 6 5 1 2 3 4 3 1 ● ● ● ● ○ ● - - - - - - ● ● ● ● ○ ○ ● ● ○ ○ ● ● ● ○ ● ● ○ ○ - - - - - - ○ ○ ● ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ (6) (7) 1 1 3 2 ● ● ● ◐ ○ - - - - - ● ○ ○ ● ○ ○ ● ● ● ● ● ○ ○ ● ○ - - - - - ● ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ 1 2 2 5 3 ● ● ○ ○ ○ ◐ ◐ ◐ ◐ ● ● ○ ○ ○ ○ - - - - - - - - - - - - - - - ● ○ ○ ○ ○ ● ● ● ● ● ○ ○ ○ ○ ○ ○ ● ● ● ● ● ● ● ● ○ ● ● ● ● ● ● ○ ○ ○ ○ ● ● ● ● ● ○ ○ ● ○ ○ - - - - - - - - - - - - - - - ● ○ ○ ○ ○ ○ ● ○ ● ● ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ● ○ ○ ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1 2 3 3 3 6 5 6 5 1 2 3 4 3 3 ● ● ● ● ● ● ● ● ○ ● ○ ○ ○ ○ ● ● ● ● ● - - - - - - - - - - - - - - - - - - - ● ● ● ○ ● ● ● ○ ○ ○ ○ ○ ○ ○ ○ ● ● ● ● ● ● ○ ● ○ ● ○ ● ● ● ● ● ● ● ● ○ ● ○ ○ ● ○ ● ○ ● ○ ● ○ ○ ○ ● ○ ● ○ ○ ● ○ ● ● - - - - - - - - - - - - - - - - - - - ○ ○ ● ○ ● ○ ● ○ ○ ○ ● ○ ● ○ ○ ● ○ ● ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ (6) (7) 1 2 1 (7) 1 2 3 2 4 3 4 3 2 1 (7) 1 1 ``` ## License 木兰宽松许可证, 第1版