aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/file_io.lua3
-rw-r--r--core/ui.lua18
-rw-r--r--modules/textadept/editing.lua18
-rw-r--r--modules/textadept/session.lua5
4 files changed, 14 insertions, 30 deletions
diff --git a/core/file_io.lua b/core/file_io.lua
index 48568081..bb267bcb 100644
--- a/core/file_io.lua
+++ b/core/file_io.lua
@@ -206,8 +206,7 @@ function io.save_file()
local text = buffer:get_text()
if buffer.encoding then text = text:iconv(buffer.encoding, 'UTF-8') end
local f = assert(io.open(buffer.filename, 'wb'))
- f:write(text)
- f:close()
+ f:write(text):close()
buffer:set_save_point()
buffer.mod_time = lfs.attributes(buffer.filename, 'modification')
if buffer._type then buffer._type = nil end
diff --git a/core/ui.lua b/core/ui.lua
index 39860ac0..3b9db7a2 100644
--- a/core/ui.lua
+++ b/core/ui.lua
@@ -480,18 +480,12 @@ end)
-- on mouse events.
if CURSES then
if not WIN32 then
- local function enable_mouse_mode()
- io.stdout:write("\x1b[?1002h")
- io.stdout:flush()
- end
- enable_mouse_mode()
- local function disable_mouse_mode()
- io.stdout:write("\x1b[?1002l") -- disable mouse mode
- io.stdout:flush()
- end
- events_connect(events.SUSPEND, disable_mouse_mode)
- events_connect(events.RESUME, enable_mouse_mode)
- events_connect(events.QUIT, disable_mouse_mode)
+ local function enable_mouse() io.stdout:write("\x1b[?1002h"):flush() end
+ local function disable_mouse() io.stdout:write("\x1b[?1002l"):flush() end
+ enable_mouse()
+ events_connect(events.SUSPEND, disable_mouse)
+ events_connect(events.RESUME, enable_mouse)
+ events_connect(events.QUIT, disable_mouse)
end
-- Retrieves the view or split at the given terminal coordinates.
diff --git a/modules/textadept/editing.lua b/modules/textadept/editing.lua
index b1f4601d..0fa078ca 100644
--- a/modules/textadept/editing.lua
+++ b/modules/textadept/editing.lua
@@ -181,18 +181,12 @@ end)
-- Enables and disables bracketed paste mode in curses and disables auto-pair
-- and auto-indent while pasting.
if CURSES and not WIN32 then
- local function enable_bracketed_paste_mode()
- io.stdout:write('\x1b[?2004h')
- io.stdout:flush()
- end
- enable_bracketed_paste_mode()
- local function disable_bracketed_paste_mode()
- io.stdout:write('\x1b[?2004l')
- io.stdout:flush()
- end
- events.connect(events.SUSPEND, disable_bracketed_paste_mode)
- events.connect(events.RESUME, enable_bracketed_paste_mode)
- events.connect(events.QUIT, disable_bracketed_paste_mode)
+ local function enable_br_paste() io.stdout:write('\x1b[?2004h'):flush() end
+ local function disable_br_paste() io.stdout:write('\x1b[?2004l'):flush() end
+ enable_br_paste()
+ events.connect(events.SUSPEND, disable_br_paste)
+ events.connect(events.RESUME, enable_br_paste)
+ events.connect(events.QUIT, disable_br_paste)
local auto_pairs, auto_indent
events.connect(events.CSI, function(cmd, args)
diff --git a/modules/textadept/session.lua b/modules/textadept/session.lua
index 34551505..b45abc56 100644
--- a/modules/textadept/session.lua
+++ b/modules/textadept/session.lua
@@ -194,10 +194,7 @@ function M.save(filename)
end
-- Write the session.
local f = io.open(filename, 'wb')
- if f then
- f:write(table.concat(session, '\n'))
- f:close()
- end
+ if f then f:write(table.concat(session, '\n')):close() end
end
-- Saves session on quit.
events.connect(events.QUIT, function()