kill-carriage-return. Close #144
This commit is contained in:
1
.github/workflows/test.yml
vendored
1
.github/workflows/test.yml
vendored
@@ -28,6 +28,7 @@ jobs:
|
|||||||
# TODO hollywoo
|
# TODO hollywoo
|
||||||
# TODO hollywoo-flixel
|
# TODO hollywoo-flixel
|
||||||
# TODO iso-rpg-engine
|
# TODO iso-rpg-engine
|
||||||
|
- KISS_PROJECT=kill-carriage-return
|
||||||
# TODO kiss-express
|
# TODO kiss-express
|
||||||
# TODO kiss-flixel
|
# TODO kiss-flixel
|
||||||
- KISS_PROJECT=kiss-tools
|
- KISS_PROJECT=kiss-tools
|
||||||
|
4
projects/kill-carriage-return/build.hxml
Normal file
4
projects/kill-carriage-return/build.hxml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
-lib kiss
|
||||||
|
-cp src
|
||||||
|
--main kill_carriage_return.Main
|
||||||
|
--interp
|
17
projects/kill-carriage-return/haxelib.json
Normal file
17
projects/kill-carriage-return/haxelib.json
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"main": "kill_carriage_return.Main",
|
||||||
|
"name": "kill-carriage-return",
|
||||||
|
"description": "Do you hate Windows-style line endings as much as I do?",
|
||||||
|
"classPath": "src/",
|
||||||
|
"dependencies": {
|
||||||
|
"kiss": ""
|
||||||
|
},
|
||||||
|
"url": "https://github.com/NQNStudios/kisslang",
|
||||||
|
"contributors": [
|
||||||
|
"NQNStudios"
|
||||||
|
],
|
||||||
|
"version": "0.0.0",
|
||||||
|
"releasenote": "",
|
||||||
|
"tags": [],
|
||||||
|
"license": "LGPL"
|
||||||
|
}
|
@@ -0,0 +1,7 @@
|
|||||||
|
package kill_carriage_return;
|
||||||
|
|
||||||
|
class Main {
|
||||||
|
static function main() {
|
||||||
|
Main_.main();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,46 @@
|
|||||||
|
(function usageError []
|
||||||
|
(print "Usage: haxelib run kill-carriage-return <kill or stun> <extensions...>")
|
||||||
|
(Sys.exit 1)
|
||||||
|
false)
|
||||||
|
|
||||||
|
(using haxe.io.Path)
|
||||||
|
(function run [dir :Array<String> extensions _kill]
|
||||||
|
(walkDirectory
|
||||||
|
""
|
||||||
|
dir
|
||||||
|
->:Void file
|
||||||
|
(when (contains extensions (file.extension))
|
||||||
|
((if _kill kill stun) file))
|
||||||
|
->:Void dir 0
|
||||||
|
->:Void dir 0)
|
||||||
|
(when stunnedFiles
|
||||||
|
(print "Windows line ending(s) detected in:")
|
||||||
|
(doFor file stunnedFiles (print file))
|
||||||
|
(Sys.exit 1)))
|
||||||
|
|
||||||
|
(import sys.io.File)
|
||||||
|
(function kill [file]
|
||||||
|
(File.saveContent file (.replace (File.getContent file) "\r" "")))
|
||||||
|
|
||||||
|
(var stunnedFiles [])
|
||||||
|
(function stun [file]
|
||||||
|
(when (contains (File.getContent file) "\r")
|
||||||
|
(stunnedFiles.push file)))
|
||||||
|
|
||||||
|
(ifLet [[::killOrStun ...extensions cwd] (Sys.args)]
|
||||||
|
{
|
||||||
|
(run
|
||||||
|
cwd
|
||||||
|
(for ext extensions
|
||||||
|
(if (ext.startsWith ".")
|
||||||
|
(ext.substr 1)
|
||||||
|
ext))
|
||||||
|
(case killOrStun
|
||||||
|
("kill"
|
||||||
|
true)
|
||||||
|
("stun"
|
||||||
|
false)
|
||||||
|
(otherwise
|
||||||
|
(usageError))))
|
||||||
|
}
|
||||||
|
(usageError))
|
4
projects/kill-carriage-return/test.sh
Normal file
4
projects/kill-carriage-return/test.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
haxelib dev kill-carriage-return ./
|
||||||
|
(cd ../../ && haxelib run kill-carriage-return stun sh)
|
Reference in New Issue
Block a user