Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/urbanjost/m_fixedform
create fixed-form TDU interfaces using ncurses(3c) from Fortran
https://github.com/urbanjost/m_fixedform
fortran fortran-package-manager ncurses tui
Last synced: about 6 hours ago
JSON representation
create fixed-form TDU interfaces using ncurses(3c) from Fortran
- Host: GitHub
- URL: https://github.com/urbanjost/m_fixedform
- Owner: urbanjost
- License: mit
- Created: 2023-04-20T12:15:24.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-29T08:12:41.000Z (7 months ago)
- Last Synced: 2024-03-29T09:25:55.276Z (7 months ago)
- Topics: fortran, fortran-package-manager, ncurses, tui
- Language: Fortran
- Homepage:
- Size: 1.29 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
**M_fixedform** simplifies creating a TUI (Terminal User Interface)
with Ncurses from Fortran. That is it facilitates creating simple
forms in terminal windows.### Required dependencies ...
Requires the M_ncurses module and for the ncurses library to be available
on the system.## ![M_fixedform](docs/images/M_fixedform.gif)
The idea of **M_fixedform** was originally based on memories of the
CDC NOS TDU Fortran interface and PDU and CCL where a simple text
representation of a form plus some simple descriptions could be turned
into a screen-mode interface from Fortran.Surprisingly, long after creating this I found a manual for the
TDU product from long ago. Although they are not all that similiar
after all, M_fixedform and PDUs share an approach where a simple text
template defines a more refined TUI:[NOS TDU manual](http://www.bitsavers.org/pdf/cdc/Tom_Hunter_Scans/NOS_2_Screen_Formatting_RefMan_Apr88.pdf)
A sample view of a **M_fixedform** input file as it would be rendered on the
screen that also describes the input file format converted to HTML (using an
included program) is in
[paper0001](https://urbanjost.github.io/M_fixedform/paper0001.html)M_fixedform(3f) is a beta release and so subject to change, but this
has been stable for a long time.Probably at least needs scrolling input fields and pull-down menus
added.## Name
M_fixedform(3f) - use M_ncurses to generated fixed forms
(LICENSE:MIT)
## Synopsis
```text
use M_fixedform
```
## Description---
![gmake](docs/images/gnu.gif)
---
## Building the Module using make(1)
git clone https://github.com/urbanjost/M_fixedform.git
cd M_fixedform/src
# change Makefile if not using one of the listed compilers
# for gfortran
make clean
make F90=gfortran gfortran
# for ifort
make clean
make F90=ifort ifort# for nvfortran
make clean
make F90=nvfortran nvfortranThis will compile the Fortran module and basic example
program that exercise the routine.---
![-](docs/images/fpm_logo.gif)
---
## Build and Test with FPMAlternatively, download the github repository and build it with
fpm ( as described at [Fortran Package Manager](https://github.com/fortran-lang/fpm) )```bash
git clone https://github.com/urbanjost/M_fixedform.git
cd M_fixedform
fpm run "*"
fpm run --example "*"
fpm test
```or just list it as a dependency in your fpm.toml project file.
```toml
[dependencies]
M_fixedform = { git = "https://github.com/urbanjost/M_fixedform.git" }
```
---
![docs](docs/images/docs.gif)
---
## Documentation### User
- A single page that uses javascript to combine all the HTML
descriptions of the man-pages is at
[BOOK_M_fixedform](https://urbanjost.github.io/M_fixedform/BOOK_M_fixedform.html).- a simple index to the man-pages in HTML form for the
[routines](https://urbanjost.github.io/M_fixedform/man3.html)
and [programs](https://urbanjost.github.io/M_fixedform/man1.html)- There are man-pages in the repository download in the docs/ directory
that may be installed on ULS (Unix-Like Systems).- ![man-pages](docs/images/manpages.gif)
+ [manpages.zip](https://urbanjost.github.io/M_fixedform/manpages.zip)
+ [manpages.tgz](https://urbanjost.github.io/M_fixedform/manpages.tgz)- [CHANGELOG](docs/CHANGELOG.md) provides a history of significant changes
### Developer
- [ford(1) output](https://urbanjost.github.io/M_fixedform/fpm-ford/index.html).- [github action status](docs/STATUS.md)
---
![-](docs/images/ref.gif)
---