77 lines
1.5 KiB
Lua
77 lines
1.5 KiB
Lua
function removeWord(number)
|
|
number = tonumber(number)
|
|
|
|
local file = io.open(data_get, "r")
|
|
local text = file:read("*all")
|
|
local pos = 0
|
|
-- move to line
|
|
for i=1, number do
|
|
local npos = string.find(text,"\n",pos+1)
|
|
if npos == nil then
|
|
print("last line")
|
|
break
|
|
end
|
|
pos = npos
|
|
end
|
|
|
|
-- get before
|
|
file:seek("set",0)
|
|
local before = file:read(pos-1)
|
|
file:seek("set",pos)
|
|
|
|
-- move to things to modify
|
|
pos = string.find(text,"\n",pos+1)
|
|
file:seek("set",pos)
|
|
|
|
-- find next section
|
|
local next_section = string.find(text,"\"",pos+1) or file:seek("end")
|
|
file:seek("set",pos)
|
|
|
|
local length = next_section-pos
|
|
|
|
-- get after
|
|
file:seek("set",pos)
|
|
local after = file:read("*all") or ""
|
|
|
|
-- done w file
|
|
file:close()
|
|
|
|
-- get word going to be removed
|
|
local results_table = {}
|
|
if words[number] then
|
|
table.insert(results_table,{number,words[number]})
|
|
end
|
|
results_table = adjustTableSizes(results_table)
|
|
print("\nare you sure you want to remove the following entry? (y/N)")
|
|
printOutputTable(results_table,true)
|
|
print("")
|
|
local delete = string.lower(io.read())
|
|
if delete == "y"
|
|
or delete == "ye"
|
|
or delete == "yes"
|
|
then
|
|
delete = true
|
|
else
|
|
delete = false
|
|
end
|
|
--[[
|
|
print("Before")
|
|
print(text)
|
|
|
|
print("After:")
|
|
print(before)
|
|
print(after)
|
|
]]
|
|
if delete then
|
|
--rewrite with new info
|
|
local file = io.open(data_output, "w+")
|
|
file:write(before)
|
|
file:write("\n")
|
|
file:write(after)
|
|
file:close()
|
|
print("\nentry was deleted.\n")
|
|
else
|
|
print("\nentry was not deleted.\n")
|
|
end
|
|
end
|