aboutsummaryrefslogtreecommitdiffstats
path: root/.lush/scripts
diff options
context:
space:
mode:
Diffstat (limited to '.lush/scripts')
-rw-r--r--.lush/scripts/example.lua112
1 files changed, 0 insertions, 112 deletions
diff --git a/.lush/scripts/example.lua b/.lush/scripts/example.lua
deleted file mode 100644
index e7cd210..0000000
--- a/.lush/scripts/example.lua
+++ /dev/null
@@ -1,112 +0,0 @@
---[[
-Copyright (c) 2024, Lance Borden
-All rights reserved.
-
-This software is licensed under the BSD 3-Clause License.
-You may obtain a copy of the license at:
-https://opensource.org/licenses/BSD-3-Clause
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted under the conditions stated in the BSD 3-Clause
-License.
-
-THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTIES,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-]]
-
--- This file is a demo of all of the commands Lunar Shell has in its Lua API
--- the Lua file itself is the executable unit so all code is run line by line
-
--- All Lua specific tools still work here too. Functions, loops, conditionals,
--- tables, Lua's standard library, etc are all available to integrate with Lunar Shell
-
-print("Welcome to Lunar Shell scripting")
-
--- command line args can be passed to lua programs
--- done like so: example.lua arg1 arg2 ...
--- args can be read using the global args tables
-if args ~= nil then
- print("Printing args:")
- for i = 1, #args do
- print(args[i])
- end
-end
-
--- exec can be used to run any command line prompt
--- this method is much more native than using os.execute and is the recommended function
--- it also returns a boolean on if the command executed successfully
-if lush.exec('echo "hello world"\n') then
- print("echo worked properly")
-end
-
--- debug mode can be used to log execution of commands
-lush.debug(true) -- enters debug
-lush.exec('echo "echo in debug mode"')
-lush.debug(false) -- exits debug
-
--- getcwd returns the current working directory
-local cwd = lush.getcwd()
-print(cwd)
-
--- exec also supports piping
--- this comment will get grepped since it says hello
-lush.cd("~/.lush/scripts")
-lush.exec('cat "example.lua" | grep "hello" | sort | uniq')
-lush.cd(cwd)
-
--- exists allows you to check if a file or directory exists
-if lush.exists("~/.lush/scripts/example.lua") then
- print("example.lua exists")
-end
-
--- isFile and isDir check if a path points to a file or a directory
-if lush.isFile("~/.lush/scripts/example.lua") then
- print("example.lua is a file")
-end
-
-if not lush.isDirectory("~/.lush/scripts/example.lua") then
- print("example.lua is not a directory")
-end
-
--- you can also check if a file is readable/writeable
-if lush.isReadable("~/.lush/scripts/example.lua") then
- print("example.lua is readable")
-end
-if lush.isWriteable("~/.lush/scripts/example.lua") then
- print("example.lua is writeable")
-end
-
--- you can fetch the most recently executed command in history
-print("Most recent history: " .. lush.lastHistory())
-
--- you can also fetch history at a certain index in the past (1 being most recent)
-print("Most recent history indexed: " .. lush.getHistory(1))
-
--- you can set environment variables using putenv
-lush.setenv("EXAMPLE", "Lunar Shell Example")
-
--- you can get an environment variable using getenv
-print("Value of EXAMPLE: " .. lush.getenv("EXAMPLE"))
-
--- you can unset an environment variable with unsetenv
-lush.unsetenv("EXAMPLE")
-
--- you can get the current terminal width(cols) and height(rows)
--- this function is very useful if you want to make certain kinds of custom prompts in your init.lua
-print("Terminal Columns: " .. lush.termCols())
-print("Terminal Rows: " .. lush.termRows())
-
--- the glob function scans the current working directory for files with the given extension and returns
--- them as an array of strings
-local textFiles = lush.glob("txt")
-if textFiles ~= nil then
- print("Printing txt files:")
- for i = 1, #textFiles do
- print(textFiles[i])
- end
-end
-
--- the exit function is used to make the program quit in the case of an error
-print("making an error with lush.exit()")
-lush.exit()
s to inputGravatar Connor Lane Smith 1-0/+1 2011-10-04input focus: fix for reparenting wmsGravatar Connor Lane Smith 1-1/+1 2011-09-30fix monitor select when no focusGravatar Connor Lane Smith 1-1/+1 2011-09-20tweak matchGravatar Connor Lane Smith 1-2/+2 2011-09-20update manpageGravatar Connor Lane Smith 1-9/+6 2011-09-19detect active monitor using input focusGravatar Connor Lane Smith 1-7/+12 2011-09-19add token matchingGravatar Connor Lane Smith 1-23/+34 2011-09-19change version to 'hg'Gravatar Connor Lane Smith 1-1/+1 2011-07-24dmenu_run: sh -cGravatar Connor Lane Smith 1-1/+1 2011-07-22fix loadfontGravatar Connor Lane Smith 1-12/+13 2011-07-19Added tag 4.4 for changeset 2b105eaae831Gravatar Connor Lane Smith 1-0/+1 2011-07-19add lsx.1 to distGravatar Connor Lane Smith 1-1/+1 2011-07-17tweaksGravatar Connor Lane Smith 2-2/+2 2011-07-14efficiency tweaksGravatar Connor Lane Smith 2-60/+44 2011-07-14fix extra warningGravatar Connor Lane Smith 1-1/+1 2011-07-06simpler vlineGravatar Connor Lane Smith 1-4/+2 2011-07-04rebind ^N ^PGravatar Connor Lane Smith 2-3/+3 2011-06-25include limits.hGravatar Connor Lane Smith 1-0/+1 2011-06-23make clean lsxGravatar Connor Lane Smith 1-1/+1 2011-06-23lsx: check snprintfGravatar Connor Lane Smith 1-4/+3 2011-06-18update draw.cGravatar Connor Lane Smith 2-14/+14 2011-06-18simpler lsxGravatar Connor Lane Smith 3-11/+6 2011-06-13new dmenu_runGravatar Connor Lane Smith 5-26/+15