From 2e042c305207e52831c1d5eb0706e2ebbf94ab1b Mon Sep 17 00:00:00 2001 From: mitchell <70453897+667e-11@users.noreply.github.com> Date: Tue, 23 Mar 2010 06:12:30 -0400 Subject: Added textadept.user_dofile to load user files like key commands and snippets. --- core/.textadept.lua | 6 ++++++ core/ext/key_commands.lua | 7 +------ core/init.lua | 8 ++++++++ 3 files changed, 15 insertions(+), 6 deletions(-) (limited to 'core') diff --git a/core/.textadept.lua b/core/.textadept.lua index 0ce0d19a..ec6d9622 100644 --- a/core/.textadept.lua +++ b/core/.textadept.lua @@ -127,3 +127,9 @@ function switch_buffer() end -- Each argument is like a string in Lua's 'arg' table. -- @return string CocoaDialog result. function dialog(kind, ...) end + +--- +-- Calls 'dofile' on the given filename in the user's Textadept directory. +-- This is typically used for loading user files like key commands or snippets. +-- @param filename The name of the file (not path). +function user_dofile(filename) end diff --git a/core/ext/key_commands.lua b/core/ext/key_commands.lua index f318c08d..70357a5a 100644 --- a/core/ext/key_commands.lua +++ b/core/ext/key_commands.lua @@ -462,12 +462,7 @@ else keys.cad = { 'del_word_right', b } end --- Load user key commands. -local lfs = require 'lfs' -if lfs.attributes(_USERHOME..'/key_commands.lua') then - local ret, errmsg = pcall(dofile, _USERHOME..'/key_commands.lua') - if not ret then textadept.print(errmsg) end -end +textadept.user_dofile('key_commands.lua') -- load user key commands --- -- This module has no functions. diff --git a/core/init.lua b/core/init.lua index b55a3f04..7576e660 100644 --- a/core/init.lua +++ b/core/init.lua @@ -99,3 +99,11 @@ function textadept.switch_buffer() local i = tonumber(out:match('%-?%d+$')) if i and i >= 0 then view:goto_buffer(i + 1, true) end end + +-- LuaDoc is in core/.textadept.lua. +function textadept.user_dofile(filename) + if lfs.attributes(_USERHOME..'/'..filename) then + local ret, errmsg = pcall(dofile, _USERHOME..'/'..filename) + if not ret then textadept.print(errmsg) end + end +end -- cgit v1.2.3