Coder Social home page Coder Social logo

fonts's Introduction

Omenad Fonts

Downloads for All Releases Latest Release

Font for writing Indian Classical Music. Read the full documentation. Download the fonts.

Fonts

swarlipi-image

A notation system designed to be non-language specific, easy to learn, and very compact.

Bhatkhande Notation

bhatkhande-hindi-image

The classical system for writing Indian Classical Music. These are available for Hindi, English, and Punjabi.

Development

The sources are FontForge SFD files. Use it to make changes to them.

Requires Docker.

Use scripts/build to build the sources into .ttf files. Use scripts/server to run the docs. They will be accessible at http://0.0.0.0:4000/fonts/, and will watch for changes.

Releasing

Uses git-flow. Ensure CHANGELOG.md is updated. Use scripts/publish $TAG to make a zip file. Make a release on GitHub. Add that zip file to it. Add a new URL to rajada.in for the release. Make a docs/$TAG branch and update all references for downloading it. Merge to master.

fonts's People

Contributors

dependabot[bot] avatar mbaljeetsingh avatar rajadain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

fonts's Issues

Embedding font in LaTeX

As per this link, please te what should be the encoding, family, series and shape for the font?

I am trying to use this template but unable to get the font rendered in PDF.

Add Gamak Character

Add गमक Gamak (vibration) character to Omenad Meend. This should map to v and be a squiggle above the preceding character. This already exists in Ome Swarlipi:

image

  • Omenad Meend Hindi
  • Omenad Meend English

Add `dRa`

For representing cases like this:

image

While an interpretation like this is possible:

image

some users (SP) prefer द्रा .

I think it should take two spaces, and be a variant of dir, but need to confirm that. Also need to confirm if we'll need rDa.

Will also need to think about how this is implemented in Bhatkhande English and Punjabi.

Add PDF of Documentation in Font Zip File

For some users that are unable to access the internet with ease, it would be helpful to have a PDF of the documentation included in the ZIP file.

This documentation should also correspond to the version of the fonts in the ZIP file, as the one on the web may evolve.

Make it so that the documentation is exported to PDF and included in the download ZIP file on every release.

Make Right Single Quote '’' be ra

Many word processors will automatically convert the apostrophe ' to a right single quote as part of their smart quote functionality. This can lead to missing ra's in the script, across all three fonts. This can be alleviated by associating ra with both characters.

This is notwithstanding the original design mistake of choosing ; and ' for da and ra respectively, instead of [ and ] for da and ra, and { and } for Da and Ra. But there's enough content in the old style to lock us in now.

Reproducible Builds

Currently, the build script generates TTF files that FontForge finds identical (using the Elements → Compare menu), but are not binary identical. Make it so that the TTF files generated are binary identical given the same source material.

Add Publish Script

Add a publish script that will make a ZIP file of all the fonts in the ttf folder and post them as a GitHub Release.

Styling Samples should be in CSS

Currently the styling samples here:

```scss
table.composition {
border: none;
td {
width: 25%;
border: none;
border-right: 1px solid black;
}
td:last-child {
border-right: none;
}
&.bhatkhande-hindi td > code {
white-space: pre;
font-family: 'ome_bhatkhande_hindi';
}
}
```

are in SASS. Some users find this confusing, as they are unfamiliar with it, and it is not explicitly stated anywhere.

Change the Styling Samples to be in CSS.

Travis / Circle CI Integration

Once #3 and #4 are in place, use the Docker container to build the fonts and add a cipublish script that creates a ZIP file of the latest TTF and publishes to GitHub automatically, ever time there is a change to the fonts in master.

Add Build Script

Add a command line script for building the fonts from source. Capture this in scripts/cibuild. This should generate TTF files to be populated in ttf/.

Paluskar notation support

Hey! I was wondering if you are also working on a font to support the Paluskar notation too? I think it would be pretty cool to be able to switch between the Bhatkhande and Paluskar notation styles seamlessly.

Add Ghaseet Characters

Add घसीट Ghaseet (slide / angular meend) characters to Ome Swarlipi. These are the sharp, angled meend characters that should map to Q and E. These characters already exist in Omenad Meend Hindi and Omenad Meend English:

image

  • Ome Swarlipi

Issue in the underscore of komal swars, in hindi font

Applying this in Android

Some cases there is faint blue line

Faint-blue-screenshot
Faint-blue-line

If i apply a margin bottom of higher value, the underscore does not shift or is visible.

Not-visible-underscore-screenshot
Not-visible-underscore

If I remove the line separator (which is of 1dp height, applied in form of margin bottom) for the list items, the problem disappears and font is rendered as expected. This is inside a custom spinner.
no-separator

I checked the layout inspector to identify if the rendering elements are causing any harm to the font. Didn't find any overlapping.

I am applying the margin bottom because there is a mismatch of centering when English & Hindi font as substituted on the same rendering textview. I am ok with that, if I can position using margins

This issue is not present in English version of font.

Add Webfonts for Docs Use

Currently, we're using an outdated webfont style from Omescribe. Add a webfonts and styles to this repo.

In the future, we may consider automating the webfont generation with a release pipeline.

Add characters for chikari

Sometimes it is necessary to be able to write the fact that we must play a chi.

In this case, in the written score, we use the letter 'o' or the symbol '>'.

Is it possible to have a symbol to represent this ?

Khand Seperation

I couldn't find any way to seperate Khands of the notation. There should be some instruction on how to make them on the website.

Containerize Build

Since the build in #3 will most likely require dependencies for building, either FontForge or AFDKO or something, make a Dockerized container for building these fonts. Consider making another repo for that.

Transition Docs to Something Other Than Jekyll

Jekyll has a lot of dependabot alerts. Astro is much nicer and more modern, Hugo is much simpler. Now with GitHub Actions we can use any static site generator. The content is already in Markdown. Could do a redesign, or not.

Sa (first note) bhatkhande notation has missing sign

First of all, wonderful library....Plenty of complex representations.

  1. I have found the first letter is incorrectly represented in Hindi version of font
    It is right now shown as written by letter (s)

Whereas it should be shown as सा

The starting note is important, so there is a need for its valid depiction.

To keep the font backward compatible may be you can assign "saa" typing or some other unique letters for this newer representation without affecting past codes.

Do, tell me if there is already a feature to write it the way I am expecting.

  1. On a lesser priority, it will be great if english font file also supports the two letter presentation for names of all notes.

Right now its just

S R G M P D N S

What I would like to see is
Sa Re Ga Ma Pa Dha Ni Sa (like mentioned in documentation) keeping all other addons intact

I understand it is more volume of work to fit in 2 or even 3 (Dha) letters in place of one, so just a wish.

Add Vertical Dividers to Bhatkhande Fonts

Ome Swarlipi includes built-in dividers with a and A. These would be useful for Bhatkhande fonts as well, which currently rely on manual tables.

Add vertical dividers to all three Bhatkhande fonts.

Pipeline Builds for Bhatkhande Fonts

Presently we have 3 variants of Ome Bhatkhande: Hindi, English, and Punjabi. Each use the same musical symbols, but different letters for the notes. In addition, we have Bangla being added in #65.

This leads to issues of redundancy and potential inconsistency. Each new language is a fork of an existing one, and may diverge over time. When new features are added to one Bhatkhande variant, they may not be applied evenly, or at all, to the others. This is bad.

We need a build pipeline for Bhatkhande fonts that can take the musical symbols from a source font, then add in the note shapes based on the language, and generate the final Bhatkhande outputs. The note shapes will have to be tweaked to ensure they are sensibly placed and scaled.

The sequence of steps should be:

  • Generate an SFD file of musical symbols
  • Generate an SFD file of Hindi characters
  • Write a script that reads the two files, and generates Ome Bhatkhande Hindi as output
  • Validate this against the existing font to ensure compatibility
  • Generate an SFD file of English characters, and repeat
  • Generate an SFD file of Punjabi characters, and repeat

Once this pattern is established and vetted, then modify #65 to follow this and add in a Bangla variant.

Add Developer Instructions

Include instructions for developers for:

  • Installing dependencies
  • Building the fonts
  • Building the documentation

Add Ati-Tar and Ati-Mandra Characters

Add अतितार Ati-Tar (super high) and अतिमंद्र Ati-Mandra (super low) marking characters. This can intuitively be done with L to add two dots (side by side) below the preceding character, and U adding two dots above.

  • Ome Swarlipi
  • Omenad Meend Hindi
  • Omenad Meend English

Add User Instructions

These should include:

  • Where to download the file
  • How to install the fonts
  • Any dependencies / installation limitations
  • Link to full documentation for learning how to use the fonts
  • Licensing / crediting requirements
  • Contributing guidelines

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.