Page 1 of 1
only show the parent arrows for the selected bone?
Posted: Thu May 22, 2025 3:50 am
by tifacloud7
Hi everyone! I'm pretty new to Moho .
I haven’t been able to find much info or tutorials on this, so I thought I’d make a post and ask here. Really appreciate your time and any help you can offer!
So, I’m wondering — is there a way to
make the parent arrows on bones smaller, or
only show the parent arrows for the bone I have selected?
When I’m working on more complex rigging, the parent arrows sometimes get in the way and block the bones I’m trying to click on. It gets a bit tricky to work with.
I’ve tried using the “Toggle Color Bones” script to hide the bones I don’t need, but their parent arrows still show up even when the bones are hidden.
Just wondering how you all deal with this?
Would love to hear any tips or workarounds. Thanks so much in advance!

"There are arrows all over the place!"

Re: only show the parent arrows for the selected bone?
Posted: Thu May 22, 2025 9:50 am
by slowtiger
You can keep any bone invisible by making it a shy bone (and reverse that, of course). This is useful f you have a rig with many small bones cluttering your view.
Re: only show the parent arrows for the selected bone?
Posted: Thu May 22, 2025 10:58 am
by hayasidist
slowtiger wrote: ↑Thu May 22, 2025 9:50 am
You can keep any bone invisible by making it a
shy bone (and reverse that, of course). This is useful f you have a rig with many small bones cluttering your view.
I think that just hides the bone, not the parenting arrows? (same as hiding coloured bones).
Re: only show the parent arrows for the selected bone?
Posted: Fri May 23, 2025 2:23 am
by tifacloud7
Thanks so much for all the replies!
You're right — when using the Shy Bone tool to hide bones, as soon as I switch to the Reparent Bone tool, all the parent arrows still show up — including those from the hidden bones. It really gets in the way and makes things difficult.
I’m also wondering — is there a tool or option that lets me choose the parent bone from a menu or list, instead of clicking directly in the viewport?
Because right now, the arrows are covering so many bones that I can’t clearly see or select the one I want.

Re: only show the parent arrows for the selected bone?
Posted: Fri May 23, 2025 2:52 am
by synthsin75
A quick mod of the reparent bone tool:
Code: Select all
-- **************************************************
-- Provide Moho with the name of this script object
-- **************************************************
ScriptName = "LM_ReparentBone"
-- **************************************************
-- General information about this script
-- **************************************************
LM_ReparentBone = {}
LM_ReparentBone.BASE_STR = 2230
function LM_ReparentBone:Name()
return "Reparent Bone"
end
function LM_ReparentBone:Version()
return "6.0"
end
function LM_ReparentBone:Description()
return MOHO.Localize("/Scripts/Tool/ReparentBone/Description=Click to attach bone to a new parent (hold <alt> to select a new bone, <ctrl/cmd> to select a target bone)")
end
function LM_ReparentBone:Creator()
return "Lost Marble LLC"
end
function LM_ReparentBone:UILabel()
return(MOHO.Localize("/Scripts/Tool/ReparentBone/ReparentBone=Reparent Bone"))
end
-- **************************************************
-- The guts of this script
-- **************************************************
function LM_ReparentBone:IsEnabled(moho)
if (moho:CountBones() < 2) then
return false
end
if (moho.frame > 0 and not MOHO.IsMohoPro()) then
return false
end
return true
end
function LM_ReparentBone:IsRelevant(moho)
local skel = moho:Skeleton()
if (skel == nil) then
return false
end
if (moho.frame > 0 and not MOHO.IsMohoPro()) then
return false
end
return true
end
function LM_ReparentBone:OnMouseDown(moho, mouseEvent)
moho.document:PrepUndo(moho.layer, true)
moho.document:SetDirty()
self:OnReparent(moho, mouseEvent)
end
function LM_ReparentBone:OnMouseMoved(moho, mouseEvent)
self:OnReparent(moho, mouseEvent)
end
function LM_ReparentBone:OnMouseUp(moho, mouseEvent)
moho:UpdateUI()
end
function LM_ReparentBone:OnKeyDown(moho, keyEvent)
LM_SelectBone:OnKeyDown(moho, keyEvent)
end
function LM_ReparentBone:DrawMe(moho, view)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
local g = view:Graphics()
local matrix = LM.Matrix:new_local()
local bonePt = LM.Vector2:new_local()
local parentPt = LM.Vector2:new_local()
local arrowPt1 = LM.Vector2:new_local()
local arrowPt2 = LM.Vector2:new_local()
moho.layer:GetFullTransform(moho.frame, matrix, moho.document)
g:Push()
g:ApplyMatrix(matrix)
g:SetSmoothing(true)
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
--if (bone.fParent >= 0) then
--[[syn]] if (bone.fParent >= 0) and (bone.fSelected or skel:Bone(bone.fParent).fSelected)--[[(not bone.fHidden)]] then
local parentBone = skel:Bone(bone.fParent)
bonePt:Set(bone.fLength / 2, 0)
if (moho.frame > 0) then
bone.fMovedMatrix:Transform(bonePt)
else
bone.fRestMatrix:Transform(bonePt)
end
parentPt:Set(parentBone.fLength / 2, 0)
if (moho.frame > 0) then
parentBone.fMovedMatrix:Transform(parentPt)
else
parentBone.fRestMatrix:Transform(parentPt)
end
local v = parentPt - bonePt
local mag = v:Mag()
local f = mag
if (f > 0.2) then
f = 0.2
end
arrowPt1:Set(mag - f / 4, -f / 16)
arrowPt2:Set(mag - f / 4, f / 16)
f = math.atan(v.y, v.x)
arrowPt1:Rotate(f)
arrowPt2:Rotate(f)
arrowPt1.x = arrowPt1.x + bonePt.x
arrowPt1.y = arrowPt1.y + bonePt.y
arrowPt2.x = arrowPt2.x + bonePt.x
arrowPt2.y = arrowPt2.y + bonePt.y
if (bone.fSelected) then
g:SetColor(MOHO.MohoGlobals.SelCol)
else
g:SetColor(MOHO.MohoGlobals.ElemCol)
end
g:DrawLine(bonePt.x, bonePt.y, parentPt.x, parentPt.y)
g:BeginShape()
g:AddLine(parentPt, arrowPt1)
g:AddLine(arrowPt1, arrowPt2)
g:AddLine(arrowPt2, parentPt)
g:EndShape()
end
end
g:Pop()
end
function LM_ReparentBone:OnReparent(moho, mouseEvent)
if (mouseEvent.altKey) then
LM_SelectBone:Select(moho, mouseEvent.pt, mouseEvent.vec, mouseEvent.view, mouseEvent.shiftKey, mouseEvent.ctrlKey)
return
end
local skel = moho:Skeleton()
if (skel == nil) then
return
end
if (moho:CountSelectedBones() < 1) then
return
end
-- let the user pick another bone - this will be the new parent
local parentID = mouseEvent.view:PickBone(mouseEvent.pt, mouseEvent.vec, moho.layer, true)
local parentFrame = moho.layerFrame -- 0
if (mouseEvent.ctrlKey) then
local targetChanged = false
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
if (bone.fSelected and parentID ~= bone.fTargetBone:GetValue(moho.layerFrame)) then
bone.fTargetBone:SetValue(moho.layerFrame, parentID)
targetChanged = true
end
end
if (targetChanged) then
moho:NewKeyframe(CHANNEL_BONE_TARGET)
end
else
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
if (bone.fSelected) then
if (not skel:IsBoneChild(i, parentID)) then
-- new parent chosen
local v1 = LM.Vector2:new_local()
local v2 = LM.Vector2:new_local()
v1:Set(0, 0)
if (bone:IsZeroLength()) then
v2:Set(0.1, 0)
else
v2:Set(bone.fLength, 0)
end
if (moho.frame > 0) then
bone.fMovedMatrix:Transform(v1)
bone.fMovedMatrix:Transform(v2)
else
bone.fRestMatrix:Transform(v1)
bone.fRestMatrix:Transform(v2)
end
if (parentID >= 0) then
local invMatrix = LM.Matrix:new_local()
local parent = skel:Bone(parentID)
if (moho.frame > 0) then
invMatrix:Set(parent.fMovedMatrix)
else
invMatrix:Set(parent.fRestMatrix)
end
invMatrix:Invert()
invMatrix:Transform(v1)
invMatrix:Transform(v2)
end
if (parentFrame ~= 0) then
bone.fAnimPos:AddKey(parentFrame - 1)
if (bone:ParentalFlipFactor() < 0.0) then
bone.fFlipV:SetValue(parentFrame, not bone.fFlipV:GetValue(parentFrame))
end
bone.fAnimPos:SetValue(parentFrame, v1 - bone.fOffset)
else
bone.fAnimPos:SetValue(parentFrame, v1)
end
v2 = v2 - v1
local angle = math.atan(v2.y, v2.x)
while angle > 2 * math.pi do
angle = angle - 2 * math.pi
end
while angle < 0 do
angle = angle + 2 * math.pi
end
if (bone.fFixedAngle) then
if (parentFrame == 0) then
bone.fAnimAngle:SetValue(parentFrame, angle)
end
else
local angleDiff = angle - bone.fAnimAngle:GetValue(parentFrame)
if (parentFrame ~= 0) then
bone.fAnimAngle:AddKey(parentFrame - 1)
end
bone.fAnimAngle:SetValue(parentFrame, angle)
-- update future angle keyframes for relative offsets just like this frame
for keyID = 0, bone.fAnimAngle:CountKeys() - 1 do
local angleFrame = bone.fAnimAngle:GetKeyWhen(keyID)
if (angleFrame > parentFrame) then
local newAngle = bone.fAnimAngle:GetValue(angleFrame) + angleDiff
bone.fAnimAngle:SetValue(angleFrame, newAngle)
end
end
if (parentFrame == 0) then -- update action keyframes for relative offsets just like this frame
for actionID = 0, bone.fAnimAngle:CountActions() - 1 do
local action = moho:ChannelAsAnimVal(bone.fAnimAngle:Action(actionID))
for keyID = 0, action:CountKeys() - 1 do
local angleFrame = action:GetKeyWhen(keyID)
if (angleFrame > parentFrame) then
local newAngle = action:GetValue(angleFrame) + angleDiff
action:SetValue(angleFrame, newAngle)
end
end
end
end
end
if (bone.fAnimParent:CountKeys() < 2) then
bone.fAnimParent:SetValue(0, bone.fParent)
end
bone.fParent = parentID
bone.fAnimParent:SetValue(parentFrame, parentID)
if (parentFrame ~= 0) then
if (bone:ParentalFlipFactor() < 0.0) then
bone.fFlipV:SetValue(parentFrame, not bone.fFlipV:GetValue(parentFrame))
end
end
end
end
end
moho:NewKeyframe(CHANNEL_BONE)
moho:NewKeyframe(CHANNEL_BONE_T)
moho:NewKeyframe(CHANNEL_BONE_PARENT)
end
moho.layer:UpdateCurFrame()
mouseEvent.view:DrawMe()
moho:UpdateSelectedChannels()
end
-- **************************************************
-- Tool options - create and respond to tool's UI
-- **************************************************
LM_ReparentBone.CHANGE = MOHO.MSG_BASE
LM_ReparentBone.DUMMY = MOHO.MSG_BASE + 1
LM_ReparentBone.SELECTITEM = MOHO.MSG_BASE + 2
function LM_ReparentBone:DoLayout(moho, layout)
self.menu = LM.GUI.Menu(MOHO.Localize("/Scripts/Tool/ReparentBone/SelectBone=Select Bone"))
self.popup = LM.GUI.PopupMenu(128, false)
self.popup:SetMenu(self.menu)
layout:AddChild(self.popup)
end
function LM_ReparentBone:UpdateWidgets(moho)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
MOHO.BuildBoneMenu(self.menu, skel, self.SELECTITEM, self.DUMMY)
end
function LM_ReparentBone:HandleMessage(moho, view, msg)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
if (msg >= self.SELECTITEM) then
for i = 0, skel:CountBones() - 1 do
skel:Bone(i).fSelected = (i == msg - self.SELECTITEM)
end
moho:UpdateUI()
end
end
This will only show the arrow of the selected bone and its parent bone.
Re: only show the parent arrows for the selected bone?
Posted: Fri May 23, 2025 4:21 am
by tifacloud7
synthsin75 wrote: ↑Fri May 23, 2025 2:52 am
A quick mod of the reparent bone tool:
Code: Select all
-- **************************************************
-- Provide Moho with the name of this script object
-- **************************************************
ScriptName = "LM_ReparentBone"
-- **************************************************
-- General information about this script
-- **************************************************
LM_ReparentBone = {}
LM_ReparentBone.BASE_STR = 2230
function LM_ReparentBone:Name()
return "Reparent Bone"
end
function LM_ReparentBone:Version()
return "6.0"
end
function LM_ReparentBone:Description()
return MOHO.Localize("/Scripts/Tool/ReparentBone/Description=Click to attach bone to a new parent (hold <alt> to select a new bone, <ctrl/cmd> to select a target bone)")
end
function LM_ReparentBone:Creator()
return "Lost Marble LLC"
end
function LM_ReparentBone:UILabel()
return(MOHO.Localize("/Scripts/Tool/ReparentBone/ReparentBone=Reparent Bone"))
end
-- **************************************************
-- The guts of this script
-- **************************************************
function LM_ReparentBone:IsEnabled(moho)
if (moho:CountBones() < 2) then
return false
end
if (moho.frame > 0 and not MOHO.IsMohoPro()) then
return false
end
return true
end
function LM_ReparentBone:IsRelevant(moho)
local skel = moho:Skeleton()
if (skel == nil) then
return false
end
if (moho.frame > 0 and not MOHO.IsMohoPro()) then
return false
end
return true
end
function LM_ReparentBone:OnMouseDown(moho, mouseEvent)
moho.document:PrepUndo(moho.layer, true)
moho.document:SetDirty()
self:OnReparent(moho, mouseEvent)
end
function LM_ReparentBone:OnMouseMoved(moho, mouseEvent)
self:OnReparent(moho, mouseEvent)
end
function LM_ReparentBone:OnMouseUp(moho, mouseEvent)
moho:UpdateUI()
end
function LM_ReparentBone:OnKeyDown(moho, keyEvent)
LM_SelectBone:OnKeyDown(moho, keyEvent)
end
function LM_ReparentBone:DrawMe(moho, view)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
local g = view:Graphics()
local matrix = LM.Matrix:new_local()
local bonePt = LM.Vector2:new_local()
local parentPt = LM.Vector2:new_local()
local arrowPt1 = LM.Vector2:new_local()
local arrowPt2 = LM.Vector2:new_local()
moho.layer:GetFullTransform(moho.frame, matrix, moho.document)
g:Push()
g:ApplyMatrix(matrix)
g:SetSmoothing(true)
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
--if (bone.fParent >= 0) then
--[[syn]] if (bone.fParent >= 0) and (bone.fSelected or skel:Bone(bone.fParent).fSelected)--[[(not bone.fHidden)]] then
local parentBone = skel:Bone(bone.fParent)
bonePt:Set(bone.fLength / 2, 0)
if (moho.frame > 0) then
bone.fMovedMatrix:Transform(bonePt)
else
bone.fRestMatrix:Transform(bonePt)
end
parentPt:Set(parentBone.fLength / 2, 0)
if (moho.frame > 0) then
parentBone.fMovedMatrix:Transform(parentPt)
else
parentBone.fRestMatrix:Transform(parentPt)
end
local v = parentPt - bonePt
local mag = v:Mag()
local f = mag
if (f > 0.2) then
f = 0.2
end
arrowPt1:Set(mag - f / 4, -f / 16)
arrowPt2:Set(mag - f / 4, f / 16)
f = math.atan(v.y, v.x)
arrowPt1:Rotate(f)
arrowPt2:Rotate(f)
arrowPt1.x = arrowPt1.x + bonePt.x
arrowPt1.y = arrowPt1.y + bonePt.y
arrowPt2.x = arrowPt2.x + bonePt.x
arrowPt2.y = arrowPt2.y + bonePt.y
if (bone.fSelected) then
g:SetColor(MOHO.MohoGlobals.SelCol)
else
g:SetColor(MOHO.MohoGlobals.ElemCol)
end
g:DrawLine(bonePt.x, bonePt.y, parentPt.x, parentPt.y)
g:BeginShape()
g:AddLine(parentPt, arrowPt1)
g:AddLine(arrowPt1, arrowPt2)
g:AddLine(arrowPt2, parentPt)
g:EndShape()
end
end
g:Pop()
end
function LM_ReparentBone:OnReparent(moho, mouseEvent)
if (mouseEvent.altKey) then
LM_SelectBone:Select(moho, mouseEvent.pt, mouseEvent.vec, mouseEvent.view, mouseEvent.shiftKey, mouseEvent.ctrlKey)
return
end
local skel = moho:Skeleton()
if (skel == nil) then
return
end
if (moho:CountSelectedBones() < 1) then
return
end
-- let the user pick another bone - this will be the new parent
local parentID = mouseEvent.view:PickBone(mouseEvent.pt, mouseEvent.vec, moho.layer, true)
local parentFrame = moho.layerFrame -- 0
if (mouseEvent.ctrlKey) then
local targetChanged = false
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
if (bone.fSelected and parentID ~= bone.fTargetBone:GetValue(moho.layerFrame)) then
bone.fTargetBone:SetValue(moho.layerFrame, parentID)
targetChanged = true
end
end
if (targetChanged) then
moho:NewKeyframe(CHANNEL_BONE_TARGET)
end
else
for i = 0, skel:CountBones() - 1 do
local bone = skel:Bone(i)
if (bone.fSelected) then
if (not skel:IsBoneChild(i, parentID)) then
-- new parent chosen
local v1 = LM.Vector2:new_local()
local v2 = LM.Vector2:new_local()
v1:Set(0, 0)
if (bone:IsZeroLength()) then
v2:Set(0.1, 0)
else
v2:Set(bone.fLength, 0)
end
if (moho.frame > 0) then
bone.fMovedMatrix:Transform(v1)
bone.fMovedMatrix:Transform(v2)
else
bone.fRestMatrix:Transform(v1)
bone.fRestMatrix:Transform(v2)
end
if (parentID >= 0) then
local invMatrix = LM.Matrix:new_local()
local parent = skel:Bone(parentID)
if (moho.frame > 0) then
invMatrix:Set(parent.fMovedMatrix)
else
invMatrix:Set(parent.fRestMatrix)
end
invMatrix:Invert()
invMatrix:Transform(v1)
invMatrix:Transform(v2)
end
if (parentFrame ~= 0) then
bone.fAnimPos:AddKey(parentFrame - 1)
if (bone:ParentalFlipFactor() < 0.0) then
bone.fFlipV:SetValue(parentFrame, not bone.fFlipV:GetValue(parentFrame))
end
bone.fAnimPos:SetValue(parentFrame, v1 - bone.fOffset)
else
bone.fAnimPos:SetValue(parentFrame, v1)
end
v2 = v2 - v1
local angle = math.atan(v2.y, v2.x)
while angle > 2 * math.pi do
angle = angle - 2 * math.pi
end
while angle < 0 do
angle = angle + 2 * math.pi
end
if (bone.fFixedAngle) then
if (parentFrame == 0) then
bone.fAnimAngle:SetValue(parentFrame, angle)
end
else
local angleDiff = angle - bone.fAnimAngle:GetValue(parentFrame)
if (parentFrame ~= 0) then
bone.fAnimAngle:AddKey(parentFrame - 1)
end
bone.fAnimAngle:SetValue(parentFrame, angle)
-- update future angle keyframes for relative offsets just like this frame
for keyID = 0, bone.fAnimAngle:CountKeys() - 1 do
local angleFrame = bone.fAnimAngle:GetKeyWhen(keyID)
if (angleFrame > parentFrame) then
local newAngle = bone.fAnimAngle:GetValue(angleFrame) + angleDiff
bone.fAnimAngle:SetValue(angleFrame, newAngle)
end
end
if (parentFrame == 0) then -- update action keyframes for relative offsets just like this frame
for actionID = 0, bone.fAnimAngle:CountActions() - 1 do
local action = moho:ChannelAsAnimVal(bone.fAnimAngle:Action(actionID))
for keyID = 0, action:CountKeys() - 1 do
local angleFrame = action:GetKeyWhen(keyID)
if (angleFrame > parentFrame) then
local newAngle = action:GetValue(angleFrame) + angleDiff
action:SetValue(angleFrame, newAngle)
end
end
end
end
end
if (bone.fAnimParent:CountKeys() < 2) then
bone.fAnimParent:SetValue(0, bone.fParent)
end
bone.fParent = parentID
bone.fAnimParent:SetValue(parentFrame, parentID)
if (parentFrame ~= 0) then
if (bone:ParentalFlipFactor() < 0.0) then
bone.fFlipV:SetValue(parentFrame, not bone.fFlipV:GetValue(parentFrame))
end
end
end
end
end
moho:NewKeyframe(CHANNEL_BONE)
moho:NewKeyframe(CHANNEL_BONE_T)
moho:NewKeyframe(CHANNEL_BONE_PARENT)
end
moho.layer:UpdateCurFrame()
mouseEvent.view:DrawMe()
moho:UpdateSelectedChannels()
end
-- **************************************************
-- Tool options - create and respond to tool's UI
-- **************************************************
LM_ReparentBone.CHANGE = MOHO.MSG_BASE
LM_ReparentBone.DUMMY = MOHO.MSG_BASE + 1
LM_ReparentBone.SELECTITEM = MOHO.MSG_BASE + 2
function LM_ReparentBone:DoLayout(moho, layout)
self.menu = LM.GUI.Menu(MOHO.Localize("/Scripts/Tool/ReparentBone/SelectBone=Select Bone"))
self.popup = LM.GUI.PopupMenu(128, false)
self.popup:SetMenu(self.menu)
layout:AddChild(self.popup)
end
function LM_ReparentBone:UpdateWidgets(moho)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
MOHO.BuildBoneMenu(self.menu, skel, self.SELECTITEM, self.DUMMY)
end
function LM_ReparentBone:HandleMessage(moho, view, msg)
local skel = moho:Skeleton()
if (skel == nil) then
return
end
if (msg >= self.SELECTITEM) then
for i = 0, skel:CountBones() - 1 do
skel:Bone(i).fSelected = (i == msg - self.SELECTITEM)
end
moho:UpdateUI()
end
end
This will only show the arrow of the selected bone and its parent bone.
Thank you so much for your reply! I’m really excited to try it out right away!
But I’m so sorry—I’m not quite sure where I should paste the code you provided.
Would you mind explaining a little bit more? Sorry for the trouble!
(I know how to install scripts, but I’m not sure how to install or run this kind of code ><)
Re: only show the parent arrows for the selected bone?
Posted: Fri May 23, 2025 10:55 pm
by Greenlaw
This is a mod, which means it replaces the native tool. But don’t replace the file in your program folder! Instead, you need to make a copy of the original tool and place it in your Custom Content Folder.
I haven’t done this with this script, but normally, you can copy the original script and button icons from the Program folder to the Script>Tools folder in your Custom Content Folder. Then, using a text editor, paste this into that file to replace its content. When you run Moho, Moho will load this version of the tool instead of the native one. (Or, press Ctrl+Alt+Shift+L to reload scripts.)
If the mod doesn't work for you, you can remove the file from the Custom Content Folder, and Moho will resume using the native version upon relaunch. (FYI, I like to make a folder called 'Disabled' and move scripts I want to disable there. Moho will ignore scripts inside folders it doesn’t recognize. Then, if I decide to try it again later, I can move the files back into the Custom Content Folder’s Scripts>Tools folder.
It’s also possible to load this as a separate tool, so you have both available. But let’s take it one step at a time.
Hope this helps.
@Wes…this sounds interesting. Will try it out tonight.
Re: only show the parent arrows for the selected bone?
Posted: Fri May 23, 2025 11:55 pm
by synthsin75
If this is something more people might use, I'll package it up with a different name, so you can install it normally and still have the native tool available.
I only changed one line of the code, so I'm not sure it warrants being it's own tool just for that.
Re: only show the parent arrows for the selected bone?
Posted: Sat May 24, 2025 9:57 am
by tifacloud7
synthsin75 wrote: ↑Fri May 23, 2025 11:55 pm
If this is something more people might use, I'll package it up with a different name, so you can install it normally and still have the native tool available.
I only changed one line of the code, so I'm not sure it warrants being it's own tool just for that.
Thank you so much for your detailed and professional reply!
This parent arrow issue has really been bothering me, and I honestly didn’t expect that just changing one line of code could fix it
If it’s okay to ask—could you kindly let me know where exactly I should go to change that line of code?
