- Offizieller Beitrag
Angeregt durch eine Fragestellung habe ich diese Funktionalität für den SciTE-Editor erstellt.
Die normale Bewegung von Wort zu Wort mit "Strg+Pfeil li/re" bleibt erhalten.
Um den CamelJump (also das Anspringen des nächsten Großbuchstaben im Wort) auszulösen einfach "Strg+Alt+Pfeil li/re" drücken. (Alternativ "AltGr+Pfeil li/re")
Installationsanweisung findet ihr in der Datei.
CamelJump.lua
Code
-- TIME_STAMP 2012-01-28 17:47:45 v 0.2
-- INSTALLATION -----------------------------------------------------
--
-- Datei speichern im Verzeichnis:
-- "..\SciTE\LUA\"
--
-- LUA-Startup-Skript öffnen "..\SciTE\LUA\SciTEStartup.lua"
-- Am Skriptende hinzufügen:
-- 'LoadLuaFile("CamelJump.lua")'
---------------------------------------------------------------------
JumpKey = EventClass:new(Common)
function CamelJump(_d)
local diff, caret, cLeft, s = 0, editor.CurrentPos
if _d == 'left' then
editor:WordLeft()
cLeft = editor.CurrentPos
go = cLeft
editor:SetSel(cLeft, caret)
s = editor:GetSelText():find('[A-Z][^A-Z]-$')
diff = -1
else
editor:WordRight()
cLeft = caret
caret = editor.CurrentPos
go = caret
editor:SetSel(caret, cLeft)
s = editor:GetSelText():sub(2):find('[A-Z]')
end
if s then
editor:GotoPos(cLeft + s +diff)
else
editor:GotoPos(go)
end
end --> CamelJump
function JumpKey:OnKey(_keycode, _shift, _ctrl, _alt)
if _ctrl and _alt and _keycode == 37 then CamelJump('left') end
if _ctrl and _alt and _keycode == 39 then CamelJump('right') end
return nil
end --> JumpKey
Alles anzeigen