m444w
12-19-2016, 01:49 PM
;scripts
It's just a simple wrapper around the local Lich scripts dir that let's you list, read, or remove a script from it without having to leave the comfort of your FE.
I know I have my scripts dir littered with dozens of WIP that I kind of forget about over time, hopefully i'm not the only one that finds this useful.
commands:
List all installed Lich scripts in sorted alphabetically:
;scripts ls
;scripts dir ... windows sucks
;scripts list
Remove scripts
;scripts rm <script>
;scripts del <script> ... windows sucks
;scripts remove <script>
Read a script's source
;scripts cat <script>
;scripts type <script> ... windows sucks
;scripts read <script>
When you rm something you get 5 seconds to cancel it.
I have a few other of these meta scripts on the repo, and to spare everyone the annoyance of multiple threads.
;gem
works the exact same as Ruby Gem command line tool, but in your FE.
;gem list
;gem install gtk2
;gem help
;clobber
clobber lets you perform hot code reloads for required modules if you're working with some dependencies.
So if you update/recompile a gem or some other library you no longer need to log in and out to reload the new version and play with it immediately in the game.
There are a few pitfalls that are artifacts of the Ruby language such as super mismatches (if something was previously a Class but now is a Module or vice versa, etc) but it works for 95% of the use cases and is certainly easier than constantly have to relogin if you're working on your own scripting libraries.
;clobber Olib
--- Lich: clobber active.
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/extender.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/item.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/container.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/utils.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/errors.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/area.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/bounty.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/combat/creature.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/combat/creatures.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/uncommon.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/box.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jewelry.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/scroll.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jar.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jewel.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/herb.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/clothing.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/wand.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/char.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/mind.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/group.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/inventory.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/events/emitter.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/go2.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/shops.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/dictionary/dictionary.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/npcs.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/version.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/vbulletin.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/help_menu.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/monsterbold.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/cli.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib.rb
[clobber.done] reloaded 33 files...
--- Lich: clobber has exited.
Hope someone besides me finds them useful, though I imagine ;scripts will have the largest appeal.
If anyone finds some sort of bug feel free to post it up, but I've been using them for awhile now with no problems so they should be mostly stable.
if I publish any more of these meta type scripts I'll just tag them on to the end of this post instead of creating new threads.
It's just a simple wrapper around the local Lich scripts dir that let's you list, read, or remove a script from it without having to leave the comfort of your FE.
I know I have my scripts dir littered with dozens of WIP that I kind of forget about over time, hopefully i'm not the only one that finds this useful.
commands:
List all installed Lich scripts in sorted alphabetically:
;scripts ls
;scripts dir ... windows sucks
;scripts list
Remove scripts
;scripts rm <script>
;scripts del <script> ... windows sucks
;scripts remove <script>
Read a script's source
;scripts cat <script>
;scripts type <script> ... windows sucks
;scripts read <script>
When you rm something you get 5 seconds to cancel it.
I have a few other of these meta scripts on the repo, and to spare everyone the annoyance of multiple threads.
;gem
works the exact same as Ruby Gem command line tool, but in your FE.
;gem list
;gem install gtk2
;gem help
;clobber
clobber lets you perform hot code reloads for required modules if you're working with some dependencies.
So if you update/recompile a gem or some other library you no longer need to log in and out to reload the new version and play with it immediately in the game.
There are a few pitfalls that are artifacts of the Ruby language such as super mismatches (if something was previously a Class but now is a Module or vice versa, etc) but it works for 95% of the use cases and is certainly easier than constantly have to relogin if you're working on your own scripting libraries.
;clobber Olib
--- Lich: clobber active.
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/extender.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/item.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/container.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/utils.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/core/errors.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/area.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/bounty.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/combat/creature.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/combat/creatures.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/uncommon.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/box.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jewelry.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/scroll.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jar.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/jewel.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/herb.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/clothing.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/objects/wand.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/char.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/mind.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/group.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/character/inventory.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/events/emitter.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/go2.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/shops.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/dictionary/dictionary.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/npcs.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/version.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/vbulletin.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/help_menu.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/monsterbold.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib/utils/cli.rb
[clobber.reloaded] /home/benjamin/.rvm/gems/ruby-2.3.0/gems/Olib-0.0.10/lib/Olib.rb
[clobber.done] reloaded 33 files...
--- Lich: clobber has exited.
Hope someone besides me finds them useful, though I imagine ;scripts will have the largest appeal.
If anyone finds some sort of bug feel free to post it up, but I've been using them for awhile now with no problems so they should be mostly stable.
if I publish any more of these meta type scripts I'll just tag them on to the end of this post instead of creating new threads.