diff --git a/.gitignore b/.gitignore index 8d6f117..63bc223 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ result .envrc .history .todo +node_modules diff --git a/packages/devanagari/default.nix b/packages/devanagari/default.nix new file mode 100644 index 0000000..a476d81 --- /dev/null +++ b/packages/devanagari/default.nix @@ -0,0 +1,7 @@ +{ yarn2nix-moretea }: +yarn2nix-moretea.mkYarnPackage { + name = "devanagari"; + src = ./.; + packageJson = ./package.json; + yarnLock = ./yarn.lock; +} diff --git a/packages/devanagari/devanagari.js b/packages/devanagari/devanagari.js new file mode 100755 index 0000000..abfa6e3 --- /dev/null +++ b/packages/devanagari/devanagari.js @@ -0,0 +1,13 @@ +#!/usr/bin/env node +const { createInterface } = require("readline"); +const Sanscript = require("@sanskrit-coders/sanscript"); + +const rl = createInterface({ + input: process.stdin, + output: process.stdout, + terminal: false, +}); + +rl.on("line", (line) => { + console.log(Sanscript.t(line, "hk", "devanagari")); +}); diff --git a/packages/devanagari/package.json b/packages/devanagari/package.json new file mode 100644 index 0000000..c070f52 --- /dev/null +++ b/packages/devanagari/package.json @@ -0,0 +1,10 @@ +{ + "name": "devanagari", + "version": "1.0.0", + "description": "Transliterates stdin from HK to devanagari", + "bin": "devanagari.js", + "author": "kmein", + "devDependencies": { + "@sanskrit-coders/sanscript": "^1.1.5" + } +} diff --git a/packages/devanagari/yarn.lock b/packages/devanagari/yarn.lock new file mode 100644 index 0000000..8ee24e4 --- /dev/null +++ b/packages/devanagari/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@sanskrit-coders/sanscript@^1.1.5": + version "1.1.5" + resolved "https://registry.yarnpkg.com/@sanskrit-coders/sanscript/-/sanscript-1.1.5.tgz#a22222cf7a5d55f7b19e210242c59f6f819fd643" + integrity sha512-YA7MchP2CD2JnAOkj+ORDUFrISiPqx3muvhKvRO3KFOx9UfvpIdEUORoKWJ88lr1uH9T32jDxjns/MSclmDczA== diff --git a/packages/devanagari/yarn.nix b/packages/devanagari/yarn.nix new file mode 100644 index 0000000..5ce0596 --- /dev/null +++ b/packages/devanagari/yarn.nix @@ -0,0 +1,13 @@ +{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec { + offline_cache = linkFarm "offline" packages; + packages = [ + { + name = "_sanskrit_coders_sanscript___sanscript_1.1.5.tgz"; + path = fetchurl { + name = "_sanskrit_coders_sanscript___sanscript_1.1.5.tgz"; + url = "https://registry.yarnpkg.com/@sanskrit-coders/sanscript/-/sanscript-1.1.5.tgz"; + sha1 = "a22222cf7a5d55f7b19e210242c59f6f819fd643"; + }; + } + ]; +} diff --git a/packages/scripts/default.nix b/packages/scripts/default.nix index 4fa80de..2fb0fef 100644 --- a/packages/scripts/default.nix +++ b/packages/scripts/default.nix @@ -251,20 +251,7 @@ in rec { sys.stdout.write(betacode.conv.beta_to_uni(sys.stdin.read())) ''; - devanagari = pkgs.writers.writePython3Bin "devanagari" { - libraries = [ pkgs.nur.repos.kmein.python3Packages.indic-transliteration ]; - } '' - from indic_transliteration import sanscript - from indic_transliteration.sanscript import transliterate - import sys - - # Harvard Kyoto -> Devanagari - sys.stdout.write(transliterate( - sys.stdin.read(), - sanscript.HK, - sanscript.DEVANAGARI - )) - ''; + devanagari = pkgs.callPackage ../devanagari {}; manual-sort = pkgs.writers.writeHaskellBin "manual-sort" {} '' {-# LANGUAGE LambdaCase #-}